示例#1
0
文件: tests.py 项目: sobolevn/rels
            class SimplestRelation(Relation):
                name = Column(primary=True,
                              index_name='name_a',
                              no_index=False)
                value = Column(no_index=False)

                records = (('name_a', 1), ('name_b', 2))
示例#2
0
文件: tests.py 项目: Tiendil/rels
    def test_check_uniqueness_restriction_success(self):
        column_1 = Column()
        column_1.initialize("column_1")

        records = (Record([column_1], ["uuid_1"]), Record([column_1], ["uuid_2"]))

        column_1.check_uniqueness_restriction(records)
示例#3
0
文件: tests.py 项目: sobolevn/rels
class RelationSourceRelation(Relation):
    name = Column(primary=True, no_index=False, primary_checks=True)
    val_1 = Column(no_index=False)
    rel = Column(related_name='rel_source', no_index=False)

    records = (('STATE_1', 'value_1', RelationDestinationRelation.STATE_1),
               ('STATE_2', 'value_2', RelationDestinationRelation.STATE_2))
示例#4
0
文件: tests.py 项目: sobolevn/rels
 def test_equality(self):
     columns = (Column(name='col_1'), Column(name='col_2'))
     data = (1, 2)
     r_1 = Record(columns=columns, data=data)
     r_2 = Record(columns=columns, data=data)
     self.assertNotEqual(r_1, r_2)
     self.assertEqual(r_1, r_1)
示例#5
0
文件: tests.py 项目: Tiendil/rels
    def test_check_uniqueness_restriction_exception(self):
        column_1 = Column()
        column_1.initialize("column_1")

        records = (Record([column_1], ["uuid_1"]), Record([column_1], ["uuid_1"]))

        self.assertRaises(exceptions.DuplicateValueError, column_1.check_uniqueness_restriction, records)
示例#6
0
文件: tests.py 项目: sobolevn/rels
 def test_wrong_data_length(self):
     columns = (Column(name='col_1'), Column(name='col_2'))
     data = (1, 2, 3)
     self.assertRaises(exceptions.ColumnsNumberError,
                       Record,
                       columns=columns,
                       data=data)
示例#7
0
文件: tests.py 项目: Tiendil/rels
    def test_check_single_type_restriction_success(self):
        column_1 = Column()
        column_1.initialize("column_1")

        records = (Record([column_1], ["str_1"]), Record([column_1], ["str_2"]))

        column_1.check_single_type_restriction(records)
示例#8
0
文件: tests.py 项目: Tiendil/rels
    def test_check_single_type_restriction_exception(self):
        column_1 = Column()
        column_1.initialize("column_1")

        records = (Record([column_1], [1]), Record([column_1], ["str_2"]))

        self.assertRaises(exceptions.SingleTypeError, column_1.check_single_type_restriction, records)
示例#9
0
文件: tests.py 项目: Tiendil/rels
    def test_get_index_not_unique(self):
        column_1 = Column(unique=False)
        column_1.initialize("column_1")

        records = (Record([column_1], ["str_1"]), Record([column_1], ["str_2"]))

        self.assertEqual(column_1.get_index(records), {"str_1": (records[0],), "str_2": (records[1],)})
示例#10
0
文件: tests.py 项目: sobolevn/rels
    def test_check_single_type_restriction_exception(self):
        column_1 = Column()
        column_1.initialize('column_1')

        records = (Record([column_1], [1]), Record([column_1], ['str_2']))

        self.assertRaises(exceptions.SingleTypeError,
                          column_1.check_single_type_restriction, records)
示例#11
0
文件: tests.py 项目: IdenGit/rels
    def test_get_index__no_index(self):
        column_1 = Column(no_index=True)
        column_1.initialize('column_1')

        records = ( Record([column_1], ['str_1']),
                    Record([column_1], ['str_2']))

        self.assertEqual(column_1.get_index(records), None)
示例#12
0
文件: tests.py 项目: IdenGit/rels
    def test_get_index_not_unique(self):
        column_1 = Column(unique=False)
        column_1.initialize('column_1')

        records = ( Record([column_1], ['str_1']),
                    Record([column_1], ['str_2']))

        self.assertEqual(column_1.get_index(records), {'str_1': (records[0], ),
                                                       'str_2': (records[1], )})
示例#13
0
文件: tests.py 项目: sobolevn/rels
    def test_check_uniqueness_restriction_exception(self):
        column_1 = Column()
        column_1.initialize('column_1')

        records = (Record([column_1],
                          ['uuid_1']), Record([column_1], ['uuid_1']))

        self.assertRaises(exceptions.DuplicateValueError,
                          column_1.check_uniqueness_restriction, records)
示例#14
0
文件: tests.py 项目: sobolevn/rels
            class SimplestRelation(Relation):
                name = Column(primary=True,
                              no_index=False,
                              primary_checks=True)
                is_name = Column(primary=True,
                                 no_index=False,
                                 primary_checks=True)

                records = (('name_a', 'name_c'), ('name_b', 'name'))
示例#15
0
文件: tests.py 项目: sobolevn/rels
            class RelationSourceRelation(Relation):
                name = Column(primary=True)
                val_1 = Column()
                rel = Column(related_name='rel_source')

                # "name" duplicate primary attribute of RelationDestinationRelation
                records = (('name', 'value_1',
                            RelationDestinationRelation.STATE_1),
                           ('STATE_2', 'value_2',
                            RelationDestinationRelation.STATE_2))
示例#16
0
文件: tests.py 项目: sobolevn/rels
            class RelationSourceRelation(Relation):
                name = Column(primary=True)
                val_1 = Column()
                rel = Column(related_name='rel_source')

                records = (
                    ('STATE_1', 'value_1',
                     1),  # just any type without .set_related_name
                    ('STATE_2', 'value_2',
                     RelationDestinationRelation.STATE_2))
示例#17
0
文件: tests.py 项目: sobolevn/rels
    def test_get_index_not_unique(self):
        column_1 = Column(unique=False)
        column_1.initialize('column_1')

        records = (Record([column_1], ['str_1']), Record([column_1],
                                                         ['str_2']))

        self.assertEqual(column_1.get_index(records), {
            'str_1': (records[0], ),
            'str_2': (records[1], )
        })
示例#18
0
文件: tests.py 项目: sobolevn/rels
class IndexesRelation(Relation):
    name = Column(primary=True, no_index=False, primary_checks=True)
    val_1 = Column(no_index=False)
    val_2 = Column(unique=False, no_index=False)
    val_3 = Column(index_name='val_3_index', no_index=False)

    records = (
        ('rec_1', 'val_1_1', 'val_2_1', 'val_3_1'),
        ('rec_2', 'val_1_2', 'val_2_2', 'val_3_2'),
        ('rec_3', 'val_1_3', 'val_2_2', 'val_3_3'),
        ('rec_4', 'val_1_4', 'val_2_4', 'val_3_4'),
    )
示例#19
0
文件: tests.py 项目: sobolevn/rels
    def test_check_single_type_restriction_success(self):
        column_1 = Column()
        column_1.initialize('column_1')

        records = (Record([column_1], ['str_1']), Record([column_1],
                                                         ['str_2']))

        column_1.check_single_type_restriction(records)
示例#20
0
文件: tests.py 项目: sobolevn/rels
    def test_check_uniqueness_restriction_success(self):
        column_1 = Column()
        column_1.initialize('column_1')

        records = (Record([column_1],
                          ['uuid_1']), Record([column_1], ['uuid_2']))

        column_1.check_uniqueness_restriction(records)
示例#21
0
文件: tests.py 项目: sobolevn/rels
class SimplestRelation(Relation):
    name = Column(no_index=False)
    value = Column(no_index=False)

    records = (('name_a', 1), ('name_b', 2))
示例#22
0
文件: tests.py 项目: sobolevn/rels
class RelationDestinationRelation(Relation):
    name = Column(primary=True, no_index=False, primary_checks=True)
    val_1 = Column(no_index=False)

    records = (('STATE_1', 'value_1'), ('STATE_2', 'value_2'))
示例#23
0
文件: tests.py 项目: sobolevn/rels
            class SimplestRelation(Relation):
                name = Column()
                value = Column(unique=True)

                records = (('name_a', 1), ('name_b', 1))
示例#24
0
文件: tests.py 项目: sobolevn/rels
 def test_columns_values(self):
     columns = (Column(name='col_1'), Column(name='col_2'))
     data = (1, 2)
     r = Record(columns=columns, data=data)
     self.assertEqual(r.col_1, 1)
     self.assertEqual(r.col_2, 2)
示例#25
0
class Enum(Relation):
    name = Column(primary=True, no_index=True, primary_checks=True)
    value = Column(external=True, no_index=True)
示例#26
0
文件: tests.py 项目: sobolevn/rels
            class SimplestRelation(Relation):
                name = Column(primary=True, unique=False)
                value = Column()

                records = (('name_a', 1), ('name_b', 1))
示例#27
0
文件: tests.py 项目: sobolevn/rels
 def test_default_index_name(self):
     column = Column()
     column.initialize(name='test')
     self.assertEqual(column.index_name, 'index_test')
示例#28
0
文件: tests.py 项目: sobolevn/rels
 def test_custom_index_name(self):
     column = Column(index_name='my_index')
     column.initialize(name='test')
     self.assertEqual(column.index_name, 'my_index')
示例#29
0
文件: tests.py 项目: Tiendil/rels
 def test_custom_index_name(self):
     column = Column(index_name="my_index")
     column.initialize(name="test")
     self.assertEqual(column.index_name, "my_index")
示例#30
0
文件: tests.py 项目: sobolevn/rels
class SimplestEnum(Relation):
    name = Column(primary=True, no_index=False, primary_checks=True)
    value = Column(external=True, no_index=False)

    records = (('state_1', 'val_1'), ('state_2', 'val_2'))
示例#31
0
文件: tests.py 项目: IdenGit/rels
 def test_default_index_name(self):
     column = Column()
     column.initialize(name='test')
     self.assertEqual(column.index_name, 'index_test')
示例#32
0
文件: tests.py 项目: sobolevn/rels
 class ChildRelation(BaseRelation):
     value = Column(unique=False, no_index=False)
     records = (('id_1', 1), ('id_2', 2))
示例#33
0
文件: tests.py 项目: sobolevn/rels
 class BaseRelation(Relation):
     name = Column(primary=True, no_index=False)
     value = Column(no_index=False)
     records = (('id_0', 0), )
示例#34
0
文件: tests.py 项目: sobolevn/rels
class EnumWith2Primaries(Relation):

    name = Column(primary=True, no_index=False, primary_checks=True)
    value = Column(primary=True, no_index=False, primary_checks=True)

    records = (('STATE_1', 'value_1'), ('STATE_2', 'value_2'))
示例#35
0
文件: tests.py 项目: sobolevn/rels
            class SimplestRelation(Relation):
                name = Column(external=True)
                value = Column(external=True)

                records = (('name_a', 'name_c'), ('name_b', 'name_d'))
示例#36
0
文件: tests.py 项目: sobolevn/rels
class EmptyRecordsRelation(Relation):
    name = Column(no_index=False)
    value = Column(no_index=False)
示例#37
0
文件: tests.py 项目: sobolevn/rels
            class SimplestRelation(Relation):
                name = Column(primary=True)
                value = Column(primary=True)

                records = (('name_a', 'name_c'), ('name_b', 'name_a'))
示例#38
0
文件: tests.py 项目: IdenGit/rels
    def test_repr(self):
        column = Column(related_name='rel_name')
        column.initialize(name='col_name')

        column._creation_order += 1 # enshure, that creation order will be equal
        self.assertEqual(eval(repr(column)).__dict__, column.__dict__)
示例#39
0
文件: tests.py 项目: sobolevn/rels
 class BaseRelation(Relation):
     name = Column(primary=True)
     value = Column()
示例#40
0
文件: tests.py 项目: IdenGit/rels
 def test_custom_index_name(self):
     column = Column(index_name='my_index')
     column.initialize(name='test')
     self.assertEqual(column.index_name, 'my_index')
示例#41
0
文件: tests.py 项目: sobolevn/rels
 class BaseRelation(Relation):
     name = Column(primary=True, no_index=False)
     value = Column(no_index=False)