示例#1
0
    def test_all_types(self):
        sort_key_rec = mod.SortKeyRecord('99SR')
        assert sort_key_rec.type == 'str'

        sort_key_rec = mod.SortKeyRecord('99iR')
        assert sort_key_rec.type == 'int'

        sort_key_rec = mod.SortKeyRecord('99fR')
        assert sort_key_rec.type == 'float'
示例#2
0
 def test_invalid_order(self):
     with pytest.raises(ValueError):
         sort_key_rec = mod.SortKeyRecord('9i9')
示例#3
0
 def test_invalid_type(self):
     with pytest.raises(ValueError):
         sort_key_rec = mod.SortKeyRecord('99R')
示例#4
0
 def test_invalid_position(self):
     with pytest.raises(ValueError):
         sort_key_rec = mod.SortKeyRecord('bSR')
示例#5
0
    def test_all_orders(self):
        sort_key_rec = mod.SortKeyRecord('99SR')
        assert sort_key_rec.order == 'reverse'

        sort_key_rec = mod.SortKeyRecord('99if')
        assert sort_key_rec.order == 'forward'
示例#6
0
 def test_big_position(self):
     sort_key_rec = mod.SortKeyRecord('99SR')
     assert sort_key_rec.position == 99
     assert sort_key_rec.type == 'str'
     assert sort_key_rec.order == 'reverse'
示例#7
0
 def test_case(self):
     sort_key_rec = mod.SortKeyRecord('5SR')
     assert sort_key_rec.position == 5
     assert sort_key_rec.type == 'str'
     assert sort_key_rec.order == 'reverse'
示例#8
0
 def test_string(self):
     sort_key_rec = mod.SortKeyRecord('2sf')
     assert mod.transform('foo', sort_key_rec, 'forward') == 'foo'
示例#9
0
 def test_float_reversed(self):
     sort_key_rec = mod.SortKeyRecord('2fr')
     assert mod.transform('3.2', sort_key_rec, 'forward') == -3.2
示例#10
0
 def test_string_reversed(self):
     sort_key_rec = mod.SortKeyRecord('2sr')
     assert mod.transform('3.2', sort_key_rec, 'forward') == '3.2'
示例#11
0
 def test_float(self):
     sort_key_rec = mod.SortKeyRecord('2ff')
     assert mod.transform('3.2', sort_key_rec, 'forward') == 3.2
示例#12
0
 def test_integer_reversed_but_primary_is_already_reverse(self):
     sort_key_rec = mod.SortKeyRecord('2ir')
     assert mod.transform('3', sort_key_rec, 'reversed') == 3
示例#13
0
 def test_integer_reversed(self):
     sort_key_rec = mod.SortKeyRecord('2ir')
     assert mod.transform('3', sort_key_rec, 'forward') == -3
示例#14
0
 def test_one_key(self):
     sort_keys = mod.SortKeysConfig(['1sf'])
     assert sort_keys.key_fields == [mod.SortKeyRecord('1sf')]
示例#15
0
 def test_string_reversed_but_primary_is_already_reverse(self):
     sort_key_rec = mod.SortKeyRecord('2sr')
     assert mod.transform('3.2', sort_key_rec, 'reversed') == '3.2'
示例#16
0
 def test_two_keys(self):
     sort_keys = mod.SortKeysConfig(['1sf', '2ir'])
     assert sort_keys.key_fields == [
         mod.SortKeyRecord('1sf'),
         mod.SortKeyRecord('2ir')
     ]
示例#17
0
 def test_happypath(self):
     sort_key_rec = mod.SortKeyRecord('5sr')
     assert sort_key_rec.position == 5
     assert sort_key_rec.type == 'str'
     assert sort_key_rec.order == 'reverse'