Пример #1
0
    def test_is_equal_string(self):
        self.assertTrue(
            Column(name="first_name", value="Emmanuel").is_equal(
                Column(name="first_name", value="Emmanuel")))

        self.assertFalse(
            Column(name="first_name", value="Emmanuel").is_equal(
                Column(name="first_name", value="Jule")))
Пример #2
0
    def test_is_equal_ignore_col(self):
        self.assertTrue(
            Column(name="age", value=1, is_used_for_compare=0).is_equal(
                Column(name="age", value=1, is_used_for_compare=0)))

        self.assertTrue(
            Column(name="age", value=1, is_used_for_compare=0).is_equal(
                Column(name="age", value=2, is_used_for_compare=0)))
Пример #3
0
    def test_record_is_equal_fast(self):
        columns = [
            Column(name="name", value="TEST"),
            Column(name="street", value="somewhere in Zurich"),
            Column(name="age", value="10")
        ]

        a_record = Record(record_id="1", columns=columns)
        another_record = Record(record_id="2", columns=columns)

        self.assertTrue(a_record.is_equal(another_record, mode='fast'))
Пример #4
0
    def test_append_column(self):

        columns = [
            Column(name="name", value="TEST"),
            Column(name="street", value="somewhere in Zurich"),
            Column(name="age", value="10")
        ]

        a_record = Record(record_id="1", columns=columns)

        a_record.append_column(name="answer", value="yes")

        self.assertIn("answer", [col.name for col in a_record.columns])
Пример #5
0
    def test_hash_record(self):
        columns = [
            Column(name="name", value="TEST"),
            Column(name="street", value="somewhere in Zurich"),
            Column(name="age", value="10")
        ]

        string_to_hash = "10TESTsomewhere in Zurich"

        a_record = Record(record_id="1", columns=columns)
        a_record.hash_record()

        self.assertEqual(a_record.record_hash,
                         hashlib.md5(string_to_hash).hexdigest())
Пример #6
0
    def test_record_is_equal_force_no_hash(self):
        columns = [
            Column(name="name", value="TEST"),
            Column(name="street", value="somewhere in Zurich"),
            Column(name="age", value="10")
        ]

        a_record = Record(record_id="1", columns=columns)
        another_record = Record(record_id="2", columns=columns)

        # This will force the method to use the slow mode and compare column by column
        a_record.record_hash = ''
        another_record.record_hash = ''

        self.assertTrue(a_record.is_equal(another_record))
Пример #7
0
    def test_record_is_equal_slow_ignore_different_column(self):
        columns = [
            Column(name="name", value="TEST", is_used_for_compare=0),
            Column(name="street", value="somewhere in Zurich"),
            Column(name="age", value="10")
        ]

        a_record = Record(record_id="1", columns=columns)

        columns = [
            Column(name="name", value="NOTATEST", is_used_for_compare=0),
            Column(name="street", value="somewhere in Zurich"),
            Column(name="age", value="10")
        ]

        another_record = Record(record_id="2", columns=columns)

        self.assertTrue(a_record.is_equal(another_record, mode='slow'))
        self.assertTrue(another_record.is_equal(a_record, mode='slow'))
Пример #8
0
    def test_record_is_equal_fast_ignore_different_column(self):
        """In fast mode the column values are ignore and only the hash is used"""
        columns = [
            Column(name="name", value="TEST", is_used_for_compare=0),
            Column(name="street", value="somewhere in Zurich"),
            Column(name="age", value="10")
        ]

        a_record = Record(record_id="1", columns=columns)

        columns = [
            Column(name="name", value="NOTATEST", is_used_for_compare=0),
            Column(name="street", value="somewhere in Zurich"),
            Column(name="age", value="10")
        ]

        another_record = Record(record_id="2", columns=columns)

        self.assertTrue(a_record.is_equal(another_record, mode='fast'))
        self.assertTrue(another_record.is_equal(a_record, mode='fast'))
Пример #9
0
 def test_column_to_string(self):
     self.assertTrue(
         Column(name="first_name", value="Emmanuel").to_string(),
         'fist_name : Emmanuel')
Пример #10
0
    def test_is_equal_int(self):
        self.assertTrue(
            Column(name="age", value=1).is_equal(Column(name="age", value=1)))

        self.assertFalse(
            Column(name="age", value=1).is_equal(Column(name="age", value=2)))