def setup_migrations(self): migration.configure(dirname=self.dir) files_to_create = ('.migration', '20100901T100000-first-one.py', '20100901T103000-number-2.py', '20101002T113000-tertiary.py', '20101002T113000-tertiary.pyc', '20100901T100001-CAPITALS.py', 'distraction.txt') for name in files_to_create: open(os.path.join(self.dir, name), 'w').close() f = open(os.path.join(self.dir, files_to_create[1]), 'w') f.write(""" from openspending import mongo def up(): mongo.db.foobar.insert({'foo': 'bar'}) """) f.close() f = open(os.path.join(self.dir, files_to_create[2]), 'w') f.write(""" from openspending import mongo def up(): mongo.db.foobar.update({'foo': 'bar'}, {'$set': {'foo': 'baz'}}) """) f.close()
def migrate(): default = os.path.join(os.path.dirname(config['__file__']), 'migrate') migrate_dir = config.get('openspending.migrate_dir', default) migration.configure(dirname=migrate_dir) migration.up() return
def test_dotmigration_check(self): migration.configure(dirname=self.dir) h.assert_raises_regexp(migration.MigrationError, ".migration doesn't exist", migration.up)
def test_configure(self): migration.configure(dirname=self.dir) h.assert_equal(migration.root, self.dir)