Beispiel #1
0
    def test_simple_convert(self):
        c = CanFrameValueExtractor(0, 64)

        v = c.convert_frame(CanFrame("000", "00"))
        self.assertEqual(v, 0)

        v = c.convert_frame(self.deadbeef)
        self.assertEqual(v, 0xdeadbeefdeadbeef)
Beispiel #2
0
    def test_simple_convert_floats(self):
        c = CanFrameValueExtractor(0, 64, a=1.0)
        v = c.convert_frame(self.deadbeef)
        self.assertTrue(abs(v - float(0xdeadbeefdeadbeef)) < 1e-19)

        c = CanFrameValueExtractor(0, 64, a=10.0)
        v = c.convert_frame(self.deadbeef)
        self.assertTrue(abs((v/float(0xdeadbeefdeadbeef) - 10.0)) < 1e-19)
Beispiel #3
0
 def test_all_bits(self):
     c = CanFrameValueExtractor(0, 64)
     self.assertEqual(c.convert_frame(self.allbits), 0xffffffffffffffff)
     for i in range(63):
         c = CanFrameValueExtractor(i, 1)
         self.assertEqual(c.convert_frame(self.allbits), 1)
Beispiel #4
0
 def test_last_bit(self):
     for i in range(63):
         c = CanFrameValueExtractor(i, 1)
         self.assertEqual(c.convert_frame(self.lastbit), 1 if i == 63 else 0)
Beispiel #5
0
 def test_ford_steering_direction_left(self):
     c = CanFrameValueExtractor(32, 1)
     self.assertEqual(0, c.convert_frame(self.sdl))
Beispiel #6
0
 def test_ford_tps_offset(self):
     c = CanFrameValueExtractor(4, 12, a=0.1, c=-1000.0)
     self.assertTrue(abs(c.convert_frame(self.zerotps) + 1000.0) < 1e-19)
     self.assertTrue(abs(c.convert_frame(self.fulltps) + 900.0) < 1e-19)
Beispiel #7
0
 def test_ford_tps(self):
     c = CanFrameValueExtractor(4, 12, a=0.1)
     self.assertTrue(abs(c.convert_frame(self.zerotps) - 0.0) < 1e-19)
     self.assertTrue(abs(c.convert_frame(self.fulltps)-100.0) < 1e-19)
Beispiel #8
0
    def test_simple_custom_transform(self):
        c = CanFrameValueExtractor(0, 64, custom_transform=lambda x: 0)
        self.assertEqual(c.convert_frame(self.deadbeef), 0)

        c = CanFrameValueExtractor(0, 64, custom_transform=lambda x: x-1)
        self.assertEqual(c.convert_frame(self.deadbeef), 0xdeadbeefdeadbeef - 1)
Beispiel #9
0
 def test_no_bits(self):
     c = CanFrameValueExtractor(0, 64)
     self.assertEqual(c.convert_frame(self.nobits), 0)
     for i in range(63):
         c = CanFrameValueExtractor(i, 1)
         self.assertEqual(c.convert_frame(self.nobits), 0)