Ejemplo n.º 1
0
    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')])
Ejemplo n.º 2
0
    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)])
Ejemplo n.º 3
0
    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)])
Ejemplo n.º 4
0
    def testSubKeyAttrs(self):

        d1 = Driver('d1')

        d1.add_attr('foo', 'bar', subkey='subfoo')
        d1.add_attr('foo', 'caz', subkey='subbar')

        self.assertEqual(sorted(d1.attr_key_tuples()),
                         sorted([('foo', None, 'subfoo'),
                                 ('foo', None, 'subbar')]))
Ejemplo n.º 5
0
    def testSubKeyAttrs(self):

        d1 = Driver('d1')

        d1.add_attr('foo', 'bar', subkey='subfoo')
        d1.add_attr('foo', 'caz', subkey='subbar')

        self.assertEqual(
            sorted(d1.attr_key_tuples()),
            sorted([('foo', None, 'subfoo'), ('foo', None, 'subbar')]))
Ejemplo n.º 6
0
    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')])
Ejemplo n.º 7
0
    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')])
Ejemplo n.º 8
0
    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')])
Ejemplo n.º 9
0
    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')]))
Ejemplo n.º 10
0
    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')]))
Ejemplo n.º 11
0
    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')]))
Ejemplo n.º 12
0
    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')]))
Ejemplo n.º 13
0
    def testHasAttr(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.assertFalse(d1.has_attr(key='foo', number=False))
        self.assertTrue(d1.has_attr(key='foo', number=True))
        self.assertTrue(d1.has_attr(key='foo', number=1, subkey='two'))
Ejemplo n.º 14
0
    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')])
Ejemplo n.º 15
0
    def testHasAttr(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.assertFalse(d1.has_attr(key='foo', number=False))
        self.assertTrue(d1.has_attr(key='foo', number=True))
        self.assertTrue(d1.has_attr(key='foo', number=1, subkey='two'))
Ejemplo n.º 16
0
    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')])
Ejemplo n.º 17
0
    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')])
Ejemplo n.º 18
0
    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')])
Ejemplo n.º 19
0
    def testGettingAttrsMultipleTimes(self):
        d1 = Driver('d1')
        d2 = Driver('d2')

        d1.add_attr('foo', 'bar')
        d1.add_attr('foo0', 'bar1')
        d2.add_attr('d1', d1)

        clusto.flush()

        d = clusto.get_by_name('d1')

        self.assertEqual(len(d.references()), 1)
        self.assertEqual(len(d.attrs()), 2)
Ejemplo n.º 20
0
    def testGettingAttrValues(self):
        d1 = Driver('d1')
        d2 = Driver('d2')

        d1.add_attr('foo', 'bar')
        d1.add_attr('foo0', 'bar1')
        d2.add_attr('d1', d1)

        clusto.flush()

        self.assertEqual(sorted(['bar', 'bar1']),
                         sorted(d1.attr_values('foo.*', regex=True)))

        self.assertEqual([d1], d2.attr_values())
Ejemplo n.º 21
0
    def testGettingAttrValues(self):
        d1 = Driver('d1')
        d2 = Driver('d2')

        d1.add_attr('foo', 'bar')
        d1.add_attr('foo0', 'bar1')
        d2.add_attr('d1', d1)

        clusto.flush()

        self.assertEqual(sorted(['bar', 'bar1']),
                         sorted(d1.attr_values('foo.*', regex=True)))

        self.assertEqual([d1], d2.attr_values())
Ejemplo n.º 22
0
    def testGettingAttrsMultipleTimes(self):
        d1 = Driver('d1')
        d2 = Driver('d2')

        d1.add_attr('foo', 'bar')
        d1.add_attr('foo0', 'bar1')
        d2.add_attr('d1', d1)

        clusto.flush()

        d = clusto.get_by_name('d1')

        self.assertEqual(len(d.references()), 1)
        self.assertEqual(len(d.attrs()), 2)
Ejemplo n.º 23
0
    def testAttrCount(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_query(key='foo', number=2, count=True), 1)

        self.assertEqual(d1.attr_query(key='foo', number=0, count=True), 1)

        self.assertEqual(d1.attr_query(key='foo', number=False, count=True), 0)
        self.assertEqual(d1.attr_query(key='foo', count=True), 4)

        self.assertEqual(d1.attr_query(subkey='four', count=True), 1)

        d1.del_attrs(key='foo', value='bar1', number=True, subkey='one')
        d1.add_attr(key='foo', value='bar5', number=True, subkey='five')
        self.assertEqual(d1.attr_query(key='foo', number=0, count=True), 0)
        self.assertEqual(d1.attr_query(key='foo', number=4, count=True), 1)
Ejemplo n.º 24
0
    def testAttrCount(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_query(key='foo', number=2, count=True), 1)

        self.assertEqual(d1.attr_query(key='foo', number=0, count=True), 1)

        self.assertEqual(d1.attr_query(key='foo', number=False, count=True), 0)
        self.assertEqual(d1.attr_query(key='foo', count=True), 4)

        self.assertEqual(d1.attr_query(subkey='four', count=True), 1)

        d1.del_attrs(key='foo', value='bar1', number=True, subkey='one')
        d1.add_attr(key='foo', value='bar5', number=True, subkey='five')
        self.assertEqual(d1.attr_query(key='foo', number=0, count=True), 0)
        self.assertEqual(d1.attr_query(key='foo', number=4, count=True), 1)
Ejemplo n.º 25
0
    def testGetByAttr(self):

        d1 = Driver('d1')
        d1.add_attr('foo', 1)

        d2 = Driver('d2')
        d2.add_attr('foo', 2)

        d3 = Driver('d3')
        d3.add_attr('bar', 3)

        clusto.flush()

        result = Driver.get_by_attr('foo', 2)

        self.assertEqual(result, [d2])
Ejemplo n.º 26
0
    def testGetByAttr(self):

        d1 = Driver('d1')
        d1.add_attr('foo', 1)

        d2 = Driver('d2')
        d2.add_attr('foo', 2)

        d3 = Driver('d3')
        d3.add_attr('bar', 3)

        clusto.flush()

        result = Driver.get_by_attr('foo', 2)

        self.assertEqual(result, [d2])
Ejemplo n.º 27
0
    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')), [])
Ejemplo n.º 28
0
    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')),
                         [])
Ejemplo n.º 29
0
    def data(self):

        d1 = Driver('d1')
        d2 = Driver('d2')
        d3 = Driver('d3')

        d1.add_attr('_foo', 'bar1')
        d1.add_attr('car', 'baz')
        d1.add_attr('car', 'baz')
        d1.add_attr('d', 'dee', number=True)
        d1.add_attr('d', 'dee', number=True)
        d1.add_attr('a', 1)
        d1.add_attr('a', 1, subkey='t')
        d1.add_attr('a', 1, subkey='g')
        d1.add_attr('a', 1, subkey='z', number=4)
        d1.add_attr('a', 1, subkey='z', number=5)
        d1.add_attr('a', 1, subkey='z', number=6)

        d1.set_attr('d2', d2)
        d1.set_attr('d3', d3)

        d2.set_attr('aaa', 1)
        d2.set_attr('aab', 2)
        d2.set_attr('aac', 3)
Ejemplo n.º 30
0
    def data(self):

        d1 = Driver('d1')
        d2 = Driver('d2')
        d3 = Driver('d3')

        d1.add_attr('_foo', 'bar1')
        d1.add_attr('car', 'baz')
        d1.add_attr('car', 'baz')
        d1.add_attr('d', 'dee', number=True)
        d1.add_attr('d', 'dee', number=True)
        d1.add_attr('a', 1)
        d1.add_attr('a', 1, subkey='t')
        d1.add_attr('a', 1, subkey='g')
        d1.add_attr('a', 1, subkey='z', number=4)
        d1.add_attr('a', 1, subkey='z', number=5)
        d1.add_attr('a', 1, subkey='z', number=6)

        d1.set_attr('d2', d2)
        d1.set_attr('d3', d3)

        d2.set_attr('aaa', 1)
        d2.set_attr('aab', 2)
        d2.set_attr('aac', 3)