1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# pylint disable=C0111
import json
from lettuce import step, world
from nose.tools import assert_false, assert_true
from steps import (login, get_fixture, create_poll_result_file, click_on,
get_poll_by_name)
@step(u'I am logged in as "([^"]*)"')
def i_am_logged_in_as_rol(step, rol):
roles2generic_users = {
'Administrator': 'admin',
'Researcher': 'researcher',
'Pollster': 'encuestador'
}
browser = world.browser
username = roles2generic_users[rol]
password = username
login(browser, username, password)
assert_true(browser.is_text_present(username))
@step(u'And "([^"]*)" has "([^"]*)"')
def poll_has_result(step, poll_name, poll_result_name):
poll_result_path = get_fixture(poll_result_name)
poll_id = str(get_poll_by_name(poll_name).id)
poll = get_poll_by_name(poll_name)
with open(poll_result_path) as f:
poll_result_data = json.load(f, "utf-8")
poll_result_data['poll_id'] = poll_id
poll_result_data['pollster_username'] = "encuestador"
poll_result_data['pollster_id'] = '1'
poll_result_path = create_poll_result_file(poll_result_data,
poll_result_name)
path_and_name = (poll_result_path, poll_result_name)
poll.add_result_files([path_and_name])
@step(u'click on "([^"]*)"')
def click_on_name(step, name):
b = world.browser
click_on(b, name)
@step(u'And There is no text "([^"]*)"')
def and_there_is_no_text(step, text):
b = world.browser
assert_false(b.is_text_present(text))
|