def testSetAttrs(self): d1 = Driver('d1') d1.set_attr('foo', 'bar') self.assertEqual(d1.attr_items(), [(('foo', None, None), 'bar')]) d1.set_attr('foo', 'bar2') self.assertEqual(d1.attr_items(), [(('foo', None, None), 'bar2')]) d1.add_attr('foo', 'bar3') self.assertEqual( sorted(d1.attr_items()), sorted([(('foo', None, None), 'bar2'), (('foo', None, None), 'bar3')])) self.assertRaises(DriverException, d1.set_attr, 'foo', 'bar4') d2 = Driver('d2') d2.add_attr('a', number=0, subkey='foo', value='bar1') d2.add_attr('a', number=1, subkey='foo', value='bar1') d2.add_attr('a', number=2, subkey='foo', value='bar1') d2.set_attr('a', 't1') self.assertEqual( sorted(d2.attr_items()), sorted([(('a', 0, 'foo'), 'bar1'), (('a', 1, 'foo'), 'bar1'), (('a', 2, 'foo'), 'bar1'), (('a', None, None), 't1')]))
def testSetAttrs(self): d1 = Driver('d1') d1.set_attr('foo', 'bar') self.assertEqual(d1.attr_items(), [(('foo', None, None), 'bar')]) d1.set_attr('foo', 'bar2') self.assertEqual(d1.attr_items(), [(('foo', None, None), 'bar2')]) d1.add_attr('foo', 'bar3') self.assertEqual(sorted(d1.attr_items()), sorted([(('foo', None, None), 'bar2'), (('foo', None, None), 'bar3')])) self.assertRaises(DriverException, d1.set_attr, 'foo', 'bar4') d2 = Driver('d2') d2.add_attr('a', number=0, subkey='foo', value='bar1') d2.add_attr('a', number=1, subkey='foo', value='bar1') d2.add_attr('a', number=2, subkey='foo', value='bar1') d2.set_attr('a', 't1') self.assertEqual(sorted(d2.attr_items()), sorted([(('a', 0, 'foo'), 'bar1'), (('a', 1, 'foo'), 'bar1'), (('a', 2, 'foo'), 'bar1'), (('a', None, None), 't1')]))
def testAttributeGetValueAfterAdd(self): d1 = Driver('d1') d1.add_attr('foo', 2) self.assertEqual(d1.attr_items('foo'), [(('foo', None, None), 2)]) d1.add_attr('bar', 3) self.assertEqual(d1.attr_items('foo'), [(('foo', None, None), 2)]) self.assertEqual(d1.attr_items('bar'), [(('bar', None, None), 3)])
def testGettingAttrs(self): d1 = Driver('d1') d1.add_attr('foo', 'bar') d1.add_attr('foo', 'bar1', number=0) self.assertEqual(sorted(d1.attr_items()), [(('foo', None, None), 'bar'), (('foo', 0, None), 'bar1')]) self.assertEqual(d1.attr_items(number=True), [(('foo', 0, None), 'bar1')])
def testGettingAttrsWithSpecificValues(self): d1 = Driver('d1') d1.add_attr(key='foo', value='bar1', number=True, subkey='one') d1.add_attr(key='foo', value='bar2', number=True, subkey='two') d1.add_attr(key='foo', value='bar3', number=True, subkey='three') d1.add_attr(key='foo', value='bar4', number=True, subkey='four') self.assertEqual(list(d1.attr_items(value='bar3')), [(('foo', 2, 'three'), 'bar3')]) self.assertEqual(list(d1.attr_items(value='bar1')), [(('foo', 0, 'one'), 'bar1')])
def testDelAttrs(self): d1 = Driver('d1') d1.add_attr(key='foo', value='bar1', number=True, subkey='one') d1.add_attr(key='foo', value='bar2', number=True, subkey='two') d1.add_attr(key='foo', value='bar3', number=True, subkey='three') d1.add_attr(key='foo', value='bar4', number=True, subkey='four') d1.del_attrs(key='foo', value='bar4') self.assertEqual(list(d1.attr_items(value='bar4')), []) self.assertEqual(list(d1.attr_items(value='bar3')), [(('foo', 2, 'three'), 'bar3')]) d1.del_attrs(key='foo', subkey='three', number=2) self.assertEqual(list(d1.attr_items(value='bar3')), [])
def testNumberedAttrsWithSubKeys(self): d1 = Driver('d1') d1.add_attr(key='foo', value='bar1', number=True, subkey='one') d1.add_attr(key='foo', value='bar2', number=True, subkey='two') self.assertEqual(d1.attr_items(), [(('foo', 0, 'one'), 'bar1'), (('foo', 1, 'two'), 'bar2')])
def testAutoNumberedAttrs(self): d1 = Driver('d1') d1.add_attr('foo', 'bar') d1.add_attr('foo', 'bar1', number=True) d1.add_attr('foo', 'bar2', number=True) clusto.flush() self.assertEqual( sorted(d1.attr_items()), sorted([(('foo', None, None), 'bar'), (('foo', 0, None), 'bar1'), (('foo', 1, None), 'bar2')])) self.assertEqual( sorted(d1.attr_items(number=True)), sorted([(('foo', 0, None), 'bar1'), (('foo', 1, None), 'bar2')]))
def testAutoNumberedAttrs(self): d1 = Driver('d1') d1.add_attr('foo', 'bar') d1.add_attr('foo', 'bar1', number=True) d1.add_attr('foo', 'bar2', number=True) clusto.flush() self.assertEqual(sorted(d1.attr_items()), sorted([(('foo', None, None), 'bar'), (('foo', 0, None), 'bar1'), (('foo', 1, None), 'bar2')])) self.assertEqual(sorted(d1.attr_items(number=True)), sorted([(('foo', 0, None), 'bar1'), (('foo', 1, None), 'bar2')]))
def testHiddenAttrs(self): d1 = Driver('d1') d1.add_attr(key='foo', value='bar1', number=True, subkey='one') d1.add_attr(key='foo', value='bar2', number=True, subkey='two') d1.add_attr(key='_foo', value='bar3', number=True, subkey='three') d1.add_attr(key='_foo', value='bar4', number=True, subkey='four') self.assertEqual(d1.attr_items(ignore_hidden=True), [(('foo', 0, 'one'), 'bar1'), (('foo', 1, 'two'), 'bar2')])