Пример #1
0
 def test_loader_checks_duplicate_entities(self):
     entity = Entity(name=u'Test Entity')
     entity.save()
     duplicate = Entity(name=u'Test Entity')
     duplicate.save()
     h.assert_raises(ValueError, self._make_loader,
                       unique_keys=['name'])
Пример #2
0
    def test_loader_checks_duplicate_entries(self):
        loader = self._make_loader(unique_keys=['name'])
        self._make_entry(loader, name=u'Test Entry')

        second_entry = Entry(name=u'Test Entry',
                             dataset=loader.dataset.to_ref_dict())
        second_entry.save()
        h.assert_raises(ValueError, self._make_loader,
                          unique_keys=['name'])
Пример #3
0
    def test_entry_assertions(self):
        loader = self._make_loader(unique_keys=['first', 'second'])

        def entry(miss=None, **kwargs):
            entry = {
                'amount': 1000.00,
                'from': loader.create_entity(u'From Entity'),
                'to': loader.create_entity(u'To Entity'),
                'first': u'first',
                'second': u'second',
                'extra': u'extra'
            }

            entry.update(kwargs)
            if miss is not None:
                del entry[miss]

            return entry

        h.assert_raises(AssertionError, loader.create_entry,
                          **entry(miss='amount'))
        h.assert_raises(AssertionError, loader.create_entry,
                          **entry(miss='to'))
        h.assert_raises(AssertionError, loader.create_entry,
                          **entry(miss='from'))
        h.assert_raises(AssertionError, loader.create_entry,
                          **entry(to=u'no_entity'))
        h.assert_raises(AssertionError, loader.create_entry,
                          **entry(**{'from': u'no_entity'}))
        h.assert_raises(KeyError, loader.create_entry,
                          **entry(miss='first'))
        h.assert_raises(KeyError, loader.create_entry,
                          **entry(miss='second'))