Browse Source

Fixed flask tests

pull/1040/head
Armin Ronacher 11 years ago
parent
commit
d2d8e66130
  1. 11
      examples/flaskr/flaskr.py
  2. 3
      examples/flaskr/flaskr_tests.py
  3. 12
      examples/minitwit/minitwit.py
  4. 3
      examples/minitwit/minitwit_tests.py
  5. 4
      flask/cli.py

11
examples/flaskr/flaskr.py

@ -37,13 +37,18 @@ def connect_db():
return rv
@app.cli.command()
def initdb():
"""Creates the database tables."""
def init_db():
"""Initializes the database."""
db = get_db()
with app.open_resource('schema.sql', mode='r') as f:
db.cursor().executescript(f.read())
db.commit()
@app.cli.command('initdb')
def initdb_command():
"""Creates the database tables."""
init_db()
print('Initialized the database.')

3
examples/flaskr/flaskr_tests.py

@ -21,7 +21,8 @@ class FlaskrTestCase(unittest.TestCase):
self.db_fd, flaskr.app.config['DATABASE'] = tempfile.mkstemp()
flaskr.app.config['TESTING'] = True
self.app = flaskr.app.test_client()
flaskr.init_db()
with flaskr.app.app_context():
flaskr.init_db()
def tearDown(self):
"""Get rid of the database again after each test."""

12
examples/minitwit/minitwit.py

@ -49,15 +49,21 @@ def close_database(exception):
top.sqlite_db.close()
@app.cli.command()
def initdb():
"""Creates the database tables."""
def init_db():
"""Initializes the database."""
db = get_db()
with app.open_resource('schema.sql', mode='r') as f:
db.cursor().executescript(f.read())
db.commit()
@app.cli.command('initdb')
def initdb_command():
"""Creates the database tables."""
init_db()
print('Initialized the database.')
def query_db(query, args=(), one=False):
"""Queries the database and returns a list of dictionaries."""
cur = get_db().execute(query, args)

3
examples/minitwit/minitwit_tests.py

@ -20,7 +20,8 @@ class MiniTwitTestCase(unittest.TestCase):
"""Before each test, set up a blank database"""
self.db_fd, minitwit.app.config['DATABASE'] = tempfile.mkstemp()
self.app = minitwit.app.test_client()
minitwit.init_db()
with minitwit.app.app_context():
minitwit.init_db()
def tearDown(self):
"""Get rid of the database again after each test."""

4
flask/cli.py

@ -199,9 +199,9 @@ class FlaskGroup(click.Group):
value = prepare_exec_for_file(value)
elif '.' not in sys.path:
sys.path.insert(0, '.')
ctx.obj.app_import_path = value
ctx.ensure_object(ScriptInfo).app_import_path = value
def set_debug(ctx, value):
ctx.obj.debug = value
ctx.ensure_object(ScriptInfo).debug = value
click.Group.__init__(self, help=help, params=[
click.Option(['-a', '--app'],

Loading…
Cancel
Save