コード例 #1
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
 def test_manager_as_metadata(self, sets):
     manager = ObjectsManager(sets)
     manager.create(self.options)
     metadata = manager.to_metadata()[manager.metadata]
     expected = [Object(self.options).to_metadata()]
     self.assertEqual(len(metadata), sets)
     for index in range(sets):
         self.assertEqual(metadata[index], expected)
コード例 #2
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
 def test_manager_as_template(self, sets):
     manager = ObjectsManager(sets)
     manager.create(self.options)
     template = manager.to_template()[manager.metadata]
     expected = [Object(self.options).to_template()]
     self.assertEqual(len(template), sets)
     for index in range(sets):
         self.assertEqual(template[index], expected)
コード例 #3
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
 def test_can_compare_managers(self, sets):
     manager1 = ObjectsManager()
     manager2 = ObjectsManager()
     self.assertEqual(manager1, manager2)
     manager1.create(self.options)
     self.assertNotEqual(manager1, manager2)
     manager2.create(self.options)
     self.assertEqual(manager1, manager2)
コード例 #4
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
 def test_can_sort_objects(self):
     manager = ObjectsManager()
     names = [str(n) for n in range(9, 0, -1)]
     for name in names:
         self.options['filename'] = name
         manager.create(self.options)
     observed = [objs[0].filename for objs in manager.objects]
     expected = [str(n) for n in range(1, 10)]
     self.assertEqual(observed, expected)
コード例 #5
0
ファイル: test_package.py プロジェクト: lizbit-official/uhu
 def create_package(self):
     pkg = Package(version=self.version, product=self.product)
     pkg.objects.create(self.obj_options)
     pkg.supported_hardware.add(self.hardware)
     # control supported hardware
     hw = SupportedHardwareManager()
     hw.add(self.hardware)
     # control objects
     objs = ObjectsManager()
     objs.create(self.obj_options)
     return pkg, hw, objs
コード例 #6
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
 def test_manager_as_string(self, sets):
     self.addCleanup(os.chdir, os.getcwd())
     fixtures_dir = 'fixtures/objects'
     os.chdir(os.path.join(os.path.dirname(__file__), fixtures_dir))
     manager = ObjectsManager(sets)
     self.options['filename'] = 'manager.txt'
     manager.create(self.options)
     name = 'single' if sets == 1 else 'activeinactive'
     fn = '{}-mode.txt'.format(name)
     with open(fn) as fp:
         expected = fp.read().strip()
     self.assertEqual(str(manager), expected)
コード例 #7
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
 def test_remove_object_raises_error_if_invalid_index(self, sets):
     manager = ObjectsManager(sets)
     obj_index = manager.create(self.options)
     self.assertEqual(len(manager.all()), sets)
     with self.assertRaises(ValueError):
         manager.remove(100)
     self.assertEqual(len(manager.all()), sets)
コード例 #8
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
 def test_can_get_object(self, sets):
     manager = ObjectsManager(sets)
     obj_index = manager.create(self.options)
     for set_index in range(sets):
         obj = manager.get(obj_index=obj_index, set_index=set_index)
         self.assertEqual(obj.filename, __file__)
         self.assertEqual(obj.mode, 'raw')
         self.assertEqual(obj['target'], '/dev/sda')
コード例 #9
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
 def test_can_create_object_with_different_values(self):
     manager = ObjectsManager(2)
     self.assertEqual(len(manager.all()), 0)
     self.options['target'] = ('/dev/sda', '/dev/sdb')
     obj_index = manager.create(self.options)
     obj0 = manager.get(obj_index=obj_index, set_index=0)
     obj1 = manager.get(obj_index=obj_index, set_index=1)
     self.assertEqual(obj0['target'], '/dev/sda')
     self.assertEqual(obj1['target'], '/dev/sdb')
コード例 #10
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
    def test_update_asymmetrical_option_raises_without_install_set(self, sets):
        manager = ObjectsManager(sets)
        obj_index = manager.create(self.options)

        with self.assertRaises(ValueError):
            manager.update(obj_index, 'target', '/dev/sdb')

        for set_index in range(sets):
            obj = manager.get(obj_index=obj_index, set_index=set_index)
            self.assertEqual(obj['target'], '/dev/sda')
コード例 #11
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
    def test_can_update_symmetrical_object_option(self, sets):
        manager = ObjectsManager(sets)
        obj_index = manager.create(self.options)
        for set_index in range(sets):
            obj = manager.get(obj_index=obj_index, set_index=set_index)
            self.assertEqual(obj.filename, __file__)

        manager.update(obj_index=obj_index,
                       option='filename',
                       value='new-filename')

        for set_index in range(sets):
            obj = manager.get(obj_index=obj_index, set_index=set_index)
            self.assertEqual(obj.filename, 'new-filename')
コード例 #12
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
    def test_can_update_asymmetrical_object_option(self, sets):
        manager = ObjectsManager(sets)
        obj_index = manager.create(self.options)
        for set_index in range(sets):
            obj = manager.get(obj_index=obj_index, set_index=set_index)
            self.assertEqual(obj['target'], '/dev/sda')

        manager.update(obj_index=obj_index,
                       set_index=0,
                       option='target',
                       value='/dev/sdb')

        for set_index in range(sets):
            obj = manager.get(obj_index=obj_index, set_index=set_index)
            if set_index == 0:
                self.assertEqual(obj['target'], '/dev/sdb')
            else:
                self.assertEqual(obj['target'], '/dev/sda')
コード例 #13
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
 def test_can_get_all_objects(self, sets):
     manager = ObjectsManager(sets)
     obj_index = manager.create(self.options)
     expected = [Object(self.options).to_metadata() for _ in range(sets)]
     observed = [obj.to_metadata() for obj in manager.all()]
     self.assertEqual(observed, expected)
コード例 #14
0
ファイル: test_objects.py プロジェクト: pablopalacios/uhu
 def test_can_remove_object(self, sets):
     manager = ObjectsManager(sets)
     obj_index = manager.create(self.options)
     self.assertEqual(len(manager.all()), 1 * sets)
     manager.remove(obj_index)
     self.assertEqual(len(manager.all()), 0)