summaryrefslogtreecommitdiff
path: root/utilities/test_blinkenrocket.py
blob: 35c3eec74a80fdf2f752abae45e66dea7cb8253c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/usr/bin/python
import unittest
from blinkenrocket import *

class TestFrame(unittest.TestCase):

  def test_notImplemented(self):
      frame = Frame()
      with self.assertRaises(NotImplementedError):
        frame.getRepresentation()

class TestAnimation(unittest.TestCase):

  def test_speedDefault(self):
    anim = animationFrame([])
    self.assertEquals(ord(anim.getHeader()[0]),1)

  def test_speedOkay(self):
    anim = animationFrame([],speed=7)
    self.assertEquals(ord(anim.getHeader()[0]),7)

  def test_speedNotOkay(self):
    anim = animationFrame([],speed=70)
    self.assertEquals(ord(anim.getHeader()[0]),1)

  def test_delayDefault(self):
    anim = animationFrame([])
    self.assertEquals(ord(anim.getHeader()[1]),0)

  def test_delayOkay(self):
    anim = animationFrame([],delay=7)
    self.assertEquals(ord(anim.getHeader()[1]),7)

  def test_delayNotOkay(self):
    anim = animationFrame([],delay=70)
    self.assertEquals(ord(anim.getHeader()[1]),0)

  def test_illegalLength(self):
    with self.assertRaises(Exception):
      anim = animationFrame([0x11,0x12,0x13,0x14])

  def test_allowedLength(self):
    anim = animationFrame([0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18])

  def test_defaultHeaderOK(self):
    anim = animationFrame([])
    self.assertEquals(anim.getHeader(),[chr(1),chr(0)])

  def test_differentHeaderOK(self):
    anim = animationFrame([],speed=7,delay=8)
    self.assertEquals(anim.getHeader(),[chr(7),chr(8)])

if __name__ == '__main__':
    unittest.main()