def test_retrieve_with_custom_composite(self):
        cf_std = ColumnFamily(pool, "CustomComposite1")
        cf_cust = ColumnFamily(pool, "CustomComposite1")
        cf_cust.column_name_class = CompositeType(TestCustomComposite.IntDateType(), TestCustomComposite.IntString())

        std_col = (20120312, "321")
        cust_col = (date(2012, 3, 12), 321)
        cf_std.insert("cust_insert_key_2", {std_col: "cust_insert_val_2"})
        assert_equal(cf_cust.get("cust_insert_key_2"), {cust_col: "cust_insert_val_2"})
Example #2
0
    def test_insert_with_custom_composite(self):
        cf_std = ColumnFamily(pool, 'CustomComposite1')
        cf_cust = ColumnFamily(pool, 'CustomComposite1')
        cf_cust.column_name_class = CompositeType(
                TestCustomComposite.IntDateType(),
                TestCustomComposite.IntString())

        std_col = (20120311, '321')
        cust_col = (date(2012, 3, 11), 321)
        cf_cust.insert('cust_insert_key_1', {cust_col: 'cust_insert_val_1'})
        assert_equal(cf_std.get('cust_insert_key_1'),
                {std_col: 'cust_insert_val_1'})
Example #3
0
    def test_composite_slicing(self):
        cf_std = ColumnFamily(pool, 'CustomComposite1')
        cf_cust = ColumnFamily(pool, 'CustomComposite1')
        cf_cust.column_name_class = CompositeType(
                TestCustomComposite.IntDateType(),
                TestCustomComposite.IntString2())

        col0 = (20120101, '123')
        col1 = (20120102, '123')
        col2 = (20120102, '456')
        col3 = (20120102, '789')
        col4 = (20120103, '123')

        dt0 = date(2012, 1, 1)
        dt1 = date(2012, 1, 2)
        dt2 = date(2012, 1, 3)

        col0_cust = (dt0, 123)
        col1_cust = (dt1, 123)
        col2_cust = (dt1, 456)
        col3_cust = (dt1, 789)
        col4_cust = (dt2, 123)

        cf_std.insert('key2', {col0: '', col1: '', col2: '', col3: '', col4: ''})

        def check(column_start, column_finish, col_reversed=False):
            result = cf_cust.get('key2', column_start=column_start,
                    column_finish=column_finish, column_reversed=col_reversed)

            assert_equal(result, {col1_cust: '', col2_cust: '', col3_cust: ''})

        # Defaults should be inclusive on both ends
        check((dt1,), (dt1,))
        check((dt1,), (dt1,), True)

        check(((dt1, True),), ((dt1, True),))
        check((dt1,), ((dt2, False),))
        check(((dt1, True),), ((dt2, False),))
        check(((dt0, False),), ((dt2, False),))

        check((dt1, 123), (dt1, 789))
        check((dt1, 123), (dt1, (789, True)))
        check((dt1, (123, True)), ((dt2, False),))

        # Test inclusive ends for reversed
        check(((dt1, True),), ((dt1, True),), True)
        check( (dt1,),        ((dt1, True),), True)
        check(((dt1, True),),  (dt1,),        True)

        # Test exclusive ends for reversed
        check(((dt2, False),), ((dt0, False),), True)
        check(((dt2, False),),  (dt1,),         True)
        check((dt1,),          ((dt0, False),), True)
Example #4
0
    def test_composite_slicing(self):
        cf_std = ColumnFamily(pool, 'CustomComposite1')
        cf_cust = ColumnFamily(pool, 'CustomComposite1')
        cf_cust.column_name_class = CompositeType(
                TestCustomComposite.IntDateType(),
                TestCustomComposite.IntString2())

        col0 = (20120101, '123')
        col1 = (20120102, '123')
        col2 = (20120102, '456')
        col3 = (20120102, '789')
        col4 = (20120103, '123')

        dt0 = date(2012, 1, 1)
        dt1 = date(2012, 1, 2)
        dt2 = date(2012, 1, 3)

        col0_cust = (dt0, 123)
        col1_cust = (dt1, 123)
        col2_cust = (dt1, 456)
        col3_cust = (dt1, 789)
        col4_cust = (dt2, 123)

        cf_std.insert('key2', {col0: '', col1: '', col2: '', col3: '', col4: ''})

        result = cf_cust.get('key2',
                             column_start=((dt1, True),),
                             column_finish=((dt1, True),))
        assert_equal(result, {col1_cust: '', col2_cust: '', col3_cust: ''})

        result = cf_cust.get('key2',
                             column_start=(dt1,),
                             column_finish=((dt2, False), ))
        assert_equal(result, {col1_cust: '', col2_cust: '', col3_cust: ''})

        result = cf_cust.get('key2',
                             column_start=((dt1, True),),
                             column_finish=((dt2, False), ))
        assert_equal(result, {col1_cust: '', col2_cust: '', col3_cust: ''})

        result = cf_cust.get('key2',
                             column_start=(dt1, ),
                             column_finish=((dt2, False), ))
        assert_equal(result, {col1_cust: '', col2_cust: '', col3_cust: ''})

        result = cf_cust.get('key2',
                             column_start=((dt0, False), ),
                             column_finish=((dt2, False), ))
        assert_equal(result, {col1_cust: '', col2_cust: '', col3_cust: ''})

        result = cf_cust.get('key2',
                             column_start=(dt1, 123),
                             column_finish=(dt1, 789))
        assert_equal(result, {col1_cust: '', col2_cust: '', col3_cust: ''})

        result = cf_cust.get('key2',
                             column_start=(dt1, 123),
                             column_finish=(dt1, (789, True)))
        assert_equal(result, {col1_cust: '', col2_cust: '', col3_cust: ''})

        result = cf_cust.get('key2',
                             column_start=(dt1, (123, True)),
                             column_finish=((dt2, False), ))
        assert_equal(result, {col1_cust: '', col2_cust: '', col3_cust: ''})