def test_item(self): """Tests the navigator.dto.Item class""" item = navigator.dto.Item( title='a', subtitle='b', autocomplete='c', uid='d', icon='e', value='f', validity='g', format_='h' ) self.assertEqual(item, item) self.assertEqual(hash(item), item.__hash__()) self.assertEqual('a', item.title()) self.assertEqual('b', item.subtitle()) self.assertEqual('c', item.autocomplete()) self.assertEqual('d', item.uid()) self.assertEqual('e', item.icon()) self.assertEqual('f', item.value()) self.assertEqual('g', item.validity()) self.assertEqual('h', item.format()) self.assertEqual( hash_('c'), navigator.dto.Item(autocomplete='c').uid() ) self.assertEqual( 'images/icon.png', navigator.dto.Item().icon() ) self.assertEqual( item, navigator.dto.Item.from_json({ 'title': 'a', 'subtitle': 'b', 'autocomplete': 'c', 'uid': 'd', 'icon': 'e', 'value': 'f', 'validity': 'g', 'format_': 'h' }) )
def test_item(self): """Tests the navigator.dto.Item class""" item = navigator.dto.Item(title='a', subtitle='b', autocomplete='c', uid='d', icon='e', value='f', validity='g', format_='h') self.assertEqual(item, item) self.assertEqual(hash(item), item.__hash__()) self.assertEqual('a', item.title()) self.assertEqual('b', item.subtitle()) self.assertEqual('c', item.autocomplete()) self.assertEqual('d', item.uid()) self.assertEqual('e', item.icon()) self.assertEqual('f', item.value()) self.assertEqual('g', item.validity()) self.assertEqual('h', item.format()) self.assertEqual(hash_('c'), navigator.dto.Item(autocomplete='c').uid()) self.assertEqual('images/icon.png', navigator.dto.Item().icon()) self.assertEqual( item, navigator.dto.Item.from_json({ 'title': 'a', 'subtitle': 'b', 'autocomplete': 'c', 'uid': 'd', 'icon': 'e', 'value': 'f', 'validity': 'g', 'format_': 'h' }))
def uid(self): if self.uid_ is not None: return self.uid_ return utils.hash_(self.autocomplete())
def __eq__(self, o): return utils.hash_(self) == utils.hash_(o)
def __hash__(self): return utils.hash_(utils.freeze(self.__dict__))
def uid(self): return hash_(self.autocomplete())