コード例 #1
0
 def test_create(self, tmp_path):
     dba = DatabaseAccess(tmp_path / "db.json")
     d = DummyContextOut()
     schemaRepo = SchemaRepository()
     with ModelAccess(dba, schemaRepo, d) as mdb:
         id = mdb.insert("dummy.output", {"name": "dummy model"})
         assert id is not None
     ctxs = dba.table('fashion.prime.context').all()
     assert len(ctxs) == 1
     assert len(ctxs[0]["insert"]) == 1
     assert 'dummy.output' in ctxs[0]["insert"]
     assert id in ctxs[0]["insert"]['dummy.output']
     models = dba.table('dummy.output').all()
     assert len(models) == 1
     dba.close()
コード例 #2
0
 def test_contextReset(self, tmp_path):
     '''
     Test that when a context is re-entered, the previous context data is
     reset.
     '''
     dba = DatabaseAccess(tmp_path / "db.json")
     d = DummyContextOut()
     schemaRepo = SchemaRepository()
     with ModelAccess(dba, schemaRepo, d) as mdb:
         id = mdb.insert("dummy.output", {"name": "dummy model"})
         assert id is not None
     ctxs = dba.table('fashion.prime.context').all()
     assert len(ctxs) == 1
     models = dba.table('dummy.output').all()
     assert len(models) == 1
     # Now re-enter the same context
     with ModelAccess(dba, schemaRepo, d) as mdb:
         ctxs = dba.table('fashion.prime.context').all()
         assert len(ctxs) == 0
         models = dba.table('dummy.output').all()
         assert len(models) == 0
         id = mdb.insert("dummy.output", {"name": "dummy model the second"})
         assert id is not None
     ctxs = dba.table('fashion.prime.context').all()
     assert len(ctxs) == 1
     models = dba.table('dummy.output').all()
     assert len(models) == 1
     assert models[0]["name"] == "dummy model the second"
     dba.close()