Example #1
0
    def test_calculate_1(self):
        crcProc = DivisionCRC()
        crc = crcProc.calculate2(0b1, 1, 0b1, 1)
        self.assertEqual(crc, 0b1)

        crc = crcProc.calculate2(0b0, 1, 0b1, 1)
        self.assertEqual(crc, 0b0)

        crc = crcProc.calculate2(0b10, 2, 0b1, 1)
        self.assertEqual(crc, 0b1)

        crc = crcProc.calculate2(0b01, 2, 0b1, 1)
        self.assertEqual(crc, 0b1)
Example #2
0
    def test_calculate_2(self):
        crcProc = DivisionCRC()
        crc = crcProc.calculate2(0b00, 2, 0b11, 2)
        self.assertEqual(crc, 0b00)

        crc = crcProc.calculate2(0b01, 2, 0b11, 2)
        self.assertEqual(crc, 0b11)

        crc = crcProc.calculate2(0b10, 2, 0b11, 2)
        self.assertEqual(crc, 0b01)

        crc = crcProc.calculate2(0b11, 2, 0b11, 2)
        self.assertEqual(crc, 0b10)
Example #3
0
    def test_calculate_2_repeated(self):
        data = 0xABCD
        crcSize = 16
        dataSize = 16
        inputPoly = 0x18005  ## 0x18005 = 98309
        regInit = 0x0
        xorOut = 0x0
        reverse = True

        ## init: 0, xor: 0, rev, poly: 0x18005
        crcFun = DivisionCRC()
        crcFun.setReversed(reverse)
        crcFun.setRegisterInitValue(regInit)
        crcFun.setXorOutValue(xorOut)

        crc = crcFun.calculate2(data, dataSize, inputPoly, crcSize)

        for _ in xrange(0, 10):
            crc2 = crcFun.calculate2(data, dataSize, inputPoly, crcSize)
            self.assertEqual(crc, crc2)