blob: ed52bf61663081ae45014cb3e50c091f175d5c3b (
plain)
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
|
from lettuce import world, before, after
from splinter import Browser
from fabric.api import local
from fabric.context_managers import hide
from django.conf import settings
from django.core import management
from utils.test import remove_option_images_dir
@before.all
def set_browser():
world.browser = Browser('phantomjs')
@after.all
def exit_browser(total):
world.browser.quit()
def drop_mongo():
db = settings.MONGO_SETTINGS['NAME']
with hide('running'):
cmd = "mongo {mongo_db} --eval 'db.dropDatabase()' > /dev/null"
local(cmd.format(mongo_db=db))
def drop_sqlite():
management.call_command('flush', interactive=False, verbosity=0)
def load_fixture(fixture_name):
management.call_command('loaddata', fixture_name, interactive=False,
verbosity=0)
@before.each_feature
def before_each_feature(feature):
"""This is the main lettuce hook "@before.each_feature"."""
drop_mongo()
drop_sqlite()
if feature.name in ("Researcher adds images to options",
"Researcher can't modify poll's structure"):
load_fixture("generic_researcher")
@after.each_feature
def after_each_feature(feature):
remove_option_images_dir()
|