Exemplo n.º 1
0
 def test_insert_entry(self):
     db = StorageTableContext(**testconfig)
     db.register_model(TableOne())
     testentity = TableOne(Id=1, Id2='test_insert_entry')
     testentity = db.insert(testentity)
     assert testentity._exists
     assert db.exists(testentity)
     db.delete(testentity)
Exemplo n.º 2
0
    def test_partly_encryption(self):
        db = StorageTableContext(**testconfig)
        db.register_model(TableTwo())

        writeentity = TableTwo(Id=1,
                               Id2='test_partly_encryption',
                               Secret='Secret',
                               NonSecret='NonSecret')
        writeentity = db.insert(writeentity)
        assert db.exists(writeentity)

        readentity = db.get(TableTwo(Id=1, Id2='test_partly_encryption'))
        assert readentity.Secret == 'Secret' and readentity.NonSecret == 'NonSecret'

        db.delete(readentity)
Exemplo n.º 3
0
    def test_newtablemodel(self):
        db = StorageTableContext(**testconfig)
        db.register_model(Table4())

        model = Table4(Id=1, Id2='test_newtablemodel')
        db.insert(model)
        assert model.TableName == True
Exemplo n.º 4
0
 def test_exists_entry(self):
     db = StorageTableContext(**testconfig)
     db.register_model(TableOne())
     testentry = TableOne(Id=1, Id2='test_exists_entry')
     testentry = db.get(testentry)
     assert not testentry._exists
     assert db.exists(testentry) == False
Exemplo n.º 5
0
    def test_merge_entity(self):
        db = StorageTableContext(**testconfig)
        db.register_model(TableTwo())

        writeentity = TableTwo(Id=1,
                               Id2='test_partly_encryption',
                               Secret='Secret',
                               NonSecret='')
        writeentity = db.insert(writeentity)
        assert db.exists(writeentity)

        mergeentity = TableTwo(Id=1,
                               Id2='test_partly_encryption',
                               Secret='',
                               NonSecret='NonSecret')
        mergeentity = db.merge(mergeentity)
        assert mergeentity.Secret == 'Secret' and mergeentity.NonSecret == 'NonSecret'

        db.delete(mergeentity)
Exemplo n.º 6
0
    def test_PartitionKeyAttribute(self):
        db = StorageTableContext(**testconfig)
        db.register_model(Table5())
        testentity = Table5(PartitionKey=1,
                            RowKey='Test2',
                            Id=1,
                            Id2='test_insert_entry',
                            beginn=datetime.datetime.now(),
                            ende=datetime.datetime.now())

        testentity = db.insert(testentity)

        log.debug(testentity.entity())

        assert testentity._exists
        assert db.exists(testentity)

        testentity = Table5(PartitionKey=1, RowKey='Test2')
        log.debug(testentity.entity())

        testentity = db.get(testentity)
        assert testentity.Id == 1 and testentity.Id2 == 'test_insert_entry'

        db.delete(testentity)
Exemplo n.º 7
0
 def test_register_model(self):
     db = StorageTableContext(**testconfig)
     db.register_model(TableOne())
     assert 'TableOne' in [
         model['modelname'] for model in db._modeldefinitions
     ]
Exemplo n.º 8
0
 def test_init_StorageTableContext(self):
     db = StorageTableContext(**testconfig)
     assert isinstance(db, StorageTableContext)
Exemplo n.º 9
0
    def test_delete_tables(self):
        db = StorageTableContext(**testconfig)
        modeldef = TableOne()
        db.register_model(modeldef)
        db.unregister_model(modeldef)
        assert not 'TableOne' in [
            model['modelname'] for model in db._modeldefinitions
        ]

        db.register_model(modeldef)
        db.unregister_model(modeldef, delete_table=True)
        assert not 'TableOne' in [
            model['modelname'] for model in db._modeldefinitions
        ]

        modeldef = TableTwo()
        db.register_model(modeldef)
        db.unregister_model(modeldef, True)
        assert not 'TableTwo' in [
            model['modelname'] for model in db._modeldefinitions
        ]

        modeldef = TableThree()
        db.register_model(modeldef)
        db.unregister_model(modeldef, True)
        assert not 'TableThree' in [
            model['modelname'] for model in db._modeldefinitions
        ]

        modeldef = Table4()
        db.register_model(modeldef)
        db.unregister_model(modeldef, True)
        assert not 'Table4' in [
            model['modelname'] for model in db._modeldefinitions
        ]

        modeldef = Table5()
        db.register_model(modeldef)
        db.unregister_model(modeldef, True)
        assert not 'Table5' in [
            model['modelname'] for model in db._modeldefinitions
        ]
Exemplo n.º 10
0
 def test_register_model_first(self):
     db = StorageTableContext(**testconfig)
     with pytest.raises(ModelNotRegisteredError):
         testentry = db.get(TableOne(Id=1, Id2='test_exists_entry'))
Exemplo n.º 11
0
 def test_error_naming_convention(self):
     db = StorageTableContext(**testconfig)
     with pytest.raises(NameConventionError):
         db.register_model(TableNameConventionError())
Exemplo n.º 12
0
    def test_relationship(self):
        db = StorageTableContext(**testconfig)
        db.register_model(TableTwo())
        db.register_model(TableThree())

        for x in range(1, 11):
            db.insert(
                TableTwo(Id='First',
                         Id2=x,
                         Secret='Secret',
                         NonSecret='NonSecret'))
        for x in range(1, 11):
            db.insert(
                TableTwo(Id='Second',
                         Id2=x,
                         Secret='Secret',
                         NonSecret='NonSecret'))

        entity = TableThree(Id=1, Id2='Second')
        db.insert(entity)
        entity.OneToN = db.query(entity.OneToN)
        assert len(entity.OneToN) == 10