示例#1
0
 def args_for_test(self):
     image_area = ImageArea(None, None, generate_block(1, 1))
     image_area_h = ImageArea(generate_line(1), None, generate_block(1, 1))
     image_area_p = ImageArea(None, generate_block(1, 1),
                              generate_block(1, 1))
     image_area_hp = ImageArea(generate_line(2), generate_block(1, 1),
                               generate_block(1, 1))
     tail = Tail(None, None)
     return [
         VicarFile(gen_labels(RECSIZE=1, LBLSIZE=1), image_area, None,
                   tail),
         VicarFile(gen_labels(RECSIZE=1, LBLSIZE=1, EOL=0), image_area,
                   None, tail),
         VicarFile(gen_labels(RECSIZE=1, LBLSIZE=1, EOL=1), image_area,
                   gen_eol_labels(1, LBLSIZE=1), tail),
         VicarFile(gen_labels(RECSIZE=2, LBLSIZE=2, NBB=1), image_area_p,
                   None, tail),
         VicarFile(gen_labels(RECSIZE=2, LBLSIZE=2, EOL=0, NBB=1),
                   image_area_p, None, tail),
         VicarFile(gen_labels(RECSIZE=2, LBLSIZE=2, EOL=1, NBB=1),
                   image_area_p, gen_eol_labels(2, LBLSIZE=2), tail),
         VicarFile(gen_labels(RECSIZE=1, LBLSIZE=1, NLB=1), image_area_h,
                   None, tail),
         VicarFile(gen_labels(RECSIZE=1, LBLSIZE=1, EOL=0, NLB=1),
                   image_area_h, None, tail),
         VicarFile(gen_labels(RECSIZE=1, LBLSIZE=1, EOL=1, NLB=1),
                   image_area_h, gen_eol_labels(1, LBLSIZE=1), tail),
         VicarFile(gen_labels(RECSIZE=2, LBLSIZE=2, NBB=1, NLB=1),
                   image_area_hp, None, tail),
         VicarFile(gen_labels(RECSIZE=2, LBLSIZE=2, EOL=0, NBB=1, NLB=1),
                   image_area_hp, None, tail),
         VicarFile(gen_labels(RECSIZE=2, LBLSIZE=2, EOL=1, NBB=1, NLB=1),
                   image_area_hp, gen_eol_labels(2, LBLSIZE=2), tail),
     ]
示例#2
0
 def args_for_test(self):
     return [
         ImageArea(None, None, generate_block(1, 1)),
         ImageArea(generate_line(10), None, generate_block(5, 23)),
         ImageArea(generate_line(20), generate_block(3, 14),
                   generate_block(7, 14))
     ]
示例#3
0
 def args_for_test(self):
     header = generate_line(25)
     prefixes = generate_block(7, 8)
     tail = generate_line(124)
     # all combinations are legal
     return [
         Tail(None, None),
         Tail(None, tail),
         Tail(prefixes, None),
         Tail(prefixes, tail)
     ]
示例#4
0
 def test__init__(self):
     # verify that bad inputs raise an exception
     with self.assertRaises(Exception):
         ImageArea(None, None, None)
     with self.assertRaises(Exception):
         ImageArea(None, None, generate_block(0, 25))
     with self.assertRaises(Exception):
         ImageArea(None, None, generate_block(25, 0))
     with self.assertRaises(Exception):
         ImageArea(None, generate_block(2, 2), generate_block(2, 3))
     with self.assertRaises(Exception):
         ImageArea(generate_line(23), None, generate_block(2, 3))
     with self.assertRaises(Exception):
         ImageArea(generate_line(24), generate_block(3, 3),
                   generate_block(2, 3))
示例#5
0
    def test_has_binary_prefixes(self):
        header = generate_line(2)
        prefixes = generate_block(1, 1)

        tail = Tail(None, None)
        self.assertFalse(tail.has_binary_prefixes())

        tail = Tail(prefixes, None)
        self.assertTrue(tail.has_binary_prefixes())
示例#6
0
    def test_has_binary_prefixes(self):
        header = generate_line(2)
        prefixes = generate_block(1, 1)
        image_lines = generate_block(1, 1)

        image_area = ImageArea(None, None, image_lines)
        self.assertFalse(image_area.has_binary_prefixes())

        image_area = ImageArea(None, prefixes, image_lines)
        self.assertTrue(image_area.has_binary_prefixes())

        image_area = ImageArea(header, None, image_lines)
        self.assertFalse(image_area.has_binary_prefixes())

        image_area = ImageArea(header, prefixes, image_lines)
        self.assertTrue(image_area.has_binary_prefixes())
示例#7
0
    def test__init__(self):
        image_area = ImageArea(None, None, generate_block(1, 1))
        image_area_h = ImageArea(generate_line(1), None, generate_block(1, 1))
        image_area_p = ImageArea(None, generate_block(1, 1),
                                 generate_block(1, 1))
        image_area_hp = ImageArea(generate_line(2), generate_block(1, 1),
                                  generate_block(1, 1))
        tail = Tail(None, None)

        # Verify that bad inputs raise an exception.
        # missing sections:
        with self.assertRaises(Exception):
            VicarFile(None, image_area, gen_labels({}), tail)
        with self.assertRaises(Exception):
            VicarFile(gen_labels(1, RECSIZE=1, LBLSIZE=1, EOL=1), None,
                      gen_labels(1, ), tail)
        with self.assertRaises(Exception):
            VicarFile(gen_labels(1, RECSIZE=1, LBLSIZE=1, EOL=1), image_area,
                      gen_labels(1), None)

        # inconsistent keywords:
        with self.assertRaises(Exception):
            # missing RECSIZE
            VicarFile(gen_labels(1), image_area, gen_labels(1), tail)
        with self.assertRaises(Exception):
            # missing EOL
            VicarFile(gen_labels(1, RECSIZE=1, LBLSIZE=1), image_area,
                      gen_labels(1), tail)
        with self.assertRaises(Exception):
            # zero EOL
            VicarFile(gen_labels(RECSIZE=1, LBLSIZE=1, EOL=0), image_area,
                      gen_labels(1), tail)
        with self.assertRaises(Exception):
            # nonzero NBB but no binary prefixes
            VicarFile(gen_labels(1, RECSIZE=1, LBLSIZE=1, NBB=1), image_area,
                      None, tail)
        with self.assertRaises(Exception):
            # zero NBB but with binary prefixes
            VicarFile(gen_labels(2, RECSIZE=2, LBLSIZE=2, NBB=0), image_area_p,
                      None, tail)
        with self.assertRaises(Exception):
            # nonzero NLB but no binary header
            VicarFile(gen_labels(1, RECSIZE=1, LBLSIZE=1, NLB=1), image_area,
                      None, tail)
        with self.assertRaises(Exception):
            # zero NLB but with binary header
            VicarFile(gen_labels(1, RECSIZE=1, LBLSIZE=1, NLB=0), image_area_h,
                      None, tail)

        with self.assertRaises(Exception):
            # RECSIZE of 1 but ImageArea says 2
            VicarFile(gen_labels(1, RECSIZE=1, LBLSIZE=1, NLB=0), image_area_p,
                      None, tail)

        # two binary_prefixes
        with self.assertRaises(Exception):
            VicarFile(gen_labels(2, RECSIZE=2, LBLSIZE=2, NBB=1), image_area_p,
                      None, Tail(generate_block(2, 2), None))

        # TODO Create a case with both binary prefixes and a
        # MigrationTask.

        # verify that these do not raise
        VicarFile(gen_labels(RECSIZE=1, LBLSIZE=1), image_area, None, tail)
        VicarFile(gen_labels(RECSIZE=2, LBLSIZE=2, NBB=1), image_area_p, None,
                  tail)
        VicarFile(gen_labels(RECSIZE=1, LBLSIZE=1, NLB=1), image_area_h, None,
                  tail)
        VicarFile(gen_labels(RECSIZE=2, LBLSIZE=2, NBB=1, NLB=1),
                  image_area_hp, None, tail)