Пример #1
0
    def run_and_configure_db(self):
        yield self.db_process.restart()
        c = self.db_process.get_config()
        db_host, db_port, db_name = c['host'], c['port'], 'test'
        db = database.Database(db_host, db_port, db_name)
        self.addCleanup(db.disconnect)
        self.db = db.get_connection()
        yield tools.create_db(self.db)

        yield tools.push_initial_data(self.db)
        defer.returnValue((db_host, db_port, db_name, ))
Пример #2
0
    def testMigrating(self):
        serialization.register(VersionedTest1)
        feat.initial_data(VersionedTest1)
        yield tools.push_initial_data(self.connection)
        doc = yield self.connection.get_document('testdoc')
        self.assertEqual('default', doc.field1)

        serialization.register(VersionedTest2)
        yield tools.migration_script(self.connection)

        doc = yield self.connection.get_document('testdoc')
        self.assertEqual('default upgraded', doc.field1)
Пример #3
0
 def run_and_configure_db(self):
     yield self.db_process.restart()
     c = self.db_process.get_config()
     db_host, db_port, db_name = c['host'], c['port'], 'test'
     db = database.Database(db_host, db_port, db_name)
     self.db = db.get_connection()
     yield tools.create_db(self.db)
     # disable nagios integration for the purpose of this test
     from feat.agents.alert import alert_agent
     alert_config = alert_agent.AlertAgentConfiguration(enabled=False)
     feat.initial_data(alert_config)
     yield tools.push_initial_data(self.db)
     defer.returnValue((db_host, db_port, db_name, ))
Пример #4
0
    def testDefiningDocument(self):
        feat.initial_data(SomeDocument)
        feat.initial_data(
            SomeDocument(doc_id=u'special_id', field1=u'special'))

        yield tools.push_initial_data(self.connection)
        special = yield self.connection.get_document('special_id')
        self.assertIsInstance(special, SomeDocument)
        self.assertEqual('special', special.field1)
        ids = self.db._documents.keys()
        other_id = filter(lambda x: x not in ('special_id', "_design/feat",
                                              "_design/featjs"),
                          ids)[0]
        normal = yield self.connection.get_document(other_id)
        self.assertEqual('default', normal.field1)
Пример #5
0
    def testMigrating(self):
        serialization.register(VersionedTest1)
        feat.initial_data(VersionedTest1)
        yield tools.push_initial_data(self.connection)
        doc = yield self.connection.get_document('testdoc')
        self.assertEqual('default', doc.field1)

        serialization.register(VersionedTest2)
        migration.register(SimpleMigration(type_name=VersionedTest2.type_name,
                                           source_ver=1,
                                           target_ver=2))
        yield tools.migration_script(self.connection)

        doc = yield self.connection.get_document('testdoc')
        self.assertEqual('default upgraded', doc.field1)
Пример #6
0
 def initiate(self):
     self._database_connection = self._database.get_connection()
     d1 = tools.push_initial_data(self._database_connection)
     d2 = self._jourwriter.initiate()
     self._journaler.configure_with(self._jourwriter)
     return defer.DeferredList([d1, d2])