

@unittest.skipUnless(RUN_INDEXES, 'RUN_INDEXES is 0')
def test_remove_indexes(self):
    if (not self.is_2i_supported()):
        raise unittest.SkipTest('2I not supported')
    bucket = self.client.bucket(self.bucket_name)
    bar = bucket.new('bar', 1).add_index('bar_int', 1).add_index('bar_int', 2).add_index('baz_bin', 'baz').store()
    result = bucket.get_index('bar_int', 1)
    self.assertEqual(1, len(result))
    self.assertEqual(3, len(bar.indexes))
    self.assertEqual(2, len([x for x in bar.indexes if (x[0] == 'bar_int')]))
    bar = bar.remove_indexes().store()
    result = bucket.get_index('bar_int', 1)
    self.assertEqual(0, len(result))
    result = bucket.get_index('baz_bin', 'baz')
    self.assertEqual(0, len(result))
    self.assertEqual(0, len(bar.indexes))
    self.assertEqual(0, len([x for x in bar.indexes if (x[0] == 'bar_int')]))
    self.assertEqual(0, len([x for x in bar.indexes if (x[0] == 'baz_bin')]))
    bar = bar.add_index('bar_int', 1).add_index('bar_int', 2).add_index('baz_bin', 'baz').store()
    bar = bar.remove_index(field='bar_int').store()
    result = bucket.get_index('bar_int', 1)
    self.assertEqual(0, len(result))
    result = bucket.get_index('bar_int', 2)
    self.assertEqual(0, len(result))
    result = bucket.get_index('baz_bin', 'baz')
    self.assertEqual(1, len(result))
    self.assertEqual(1, len(bar.indexes))
    self.assertEqual(0, len([x for x in bar.indexes if (x[0] == 'bar_int')]))
    self.assertEqual(1, len([x for x in bar.indexes if (x[0] == 'baz_bin')]))
    bar = bar.add_index('bar_int', 1).add_index('bar_int', 2).add_index('baz_bin', 'baz').store()
    bar = bar.remove_index(field='bar_int', value=2).store()
    result = bucket.get_index('bar_int', 1)
    self.assertEqual(1, len(result))
    result = bucket.get_index('bar_int', 2)
    self.assertEqual(0, len(result))
    result = bucket.get_index('baz_bin', 'baz')
    self.assertEqual(1, len(result))
    self.assertEqual(2, len(bar.indexes))
    self.assertEqual(1, len([x for x in bar.indexes if (x[0] == 'bar_int')]))
    self.assertEqual(1, len([x for x in bar.indexes if (x[0] == 'baz_bin')]))

dataset/ETHPy150Open basho/riak-python-client/riak/tests/test_2i.py TwoITests.test_remove_indexes/original