class OtherXMLFileContextTests(unittest.TestCase):
    def setUp(self):
        self.working_dir = tempfile.mkdtemp()
        self.context = OtherXMLFileContext(self.working_dir, 3)

    def tearDown(self):
        shutil.rmtree(self.working_dir)

    def test_init(self):
        self.assertEquals(self.context.fast_forward, False)
        self.assertEquals(self.context.num_packages, 3)

    def test_add_unit_metadata(self):
        self.context.metadata_file_handle = mock.Mock()
        self.context.add_unit_metadata(mock.Mock(repodata={'other': 'bar'}))
        self.context.metadata_file_handle.write.assert_called_once_with('bar')

    def test_add_unit_metadata_unicode(self):
        """
        Test that the other repodata is passed as a str even if it's a unicode object.
        """
        self.context.metadata_file_handle = mock.Mock()
        expected_call = 'some unicode'
        repodata = {'other': unicode(expected_call)}
        self.context.add_unit_metadata(mock.Mock(repodata=repodata))
        self.context.metadata_file_handle.write.assert_called_once_with(expected_call)
Exemple #2
0
class PrimaryXMLFileContextTests(unittest.TestCase):
    def setUp(self):
        self.working_dir = tempfile.mkdtemp()
        self.context = OtherXMLFileContext(self.working_dir, 3)

    def tearDown(self):
        shutil.rmtree(self.working_dir)

    def test_init(self):
        self.assertEquals(self.context.fast_forward, False)
        self.assertEquals(self.context.num_packages, 3)

    def test_add_unit_metadata(self):
        self.context.metadata_file_handle = mock.Mock()
        self.context.add_unit_metadata(
            mock.Mock(metadata={'repodata': {
                'other': 'bar'
            }}))
        self.context.metadata_file_handle.write.assert_called_once_with('bar')

    def test_add_unit_metadata_unicode(self):
        """
        Test that the other repodata is passed as a str even if it's a unicode object.
        """
        self.context.metadata_file_handle = mock.Mock()
        expected_call = 'some unicode'
        metadata = {'repodata': {'other': unicode(expected_call)}}
        self.context.add_unit_metadata(mock.Mock(metadata=metadata))
        self.context.metadata_file_handle.write.assert_called_once_with(
            expected_call)
Exemple #3
0
class OtherXMLFileContextTests(unittest.TestCase):
    def setUp(self):
        self.working_dir = tempfile.mkdtemp()
        self.context = OtherXMLFileContext(self.working_dir, 3, 'sha256')
        self.unit = mock.Mock()
        self.unit.render_other.return_value = 'somexml'

    def tearDown(self):
        shutil.rmtree(self.working_dir)

    def test_init(self):
        self.assertEquals(self.context.fast_forward, False)
        self.assertEquals(self.context.num_packages, 3)

    def test_add_unit_metadata(self):
        self.context.metadata_file_handle = mock.Mock()
        self.context.add_unit_metadata(self.unit)
        self.context.metadata_file_handle.write.assert_called_once_with(
            'somexml')
        self.unit.render_other.assert_called_once_with('sha256')

    def test_add_unit_metadata_unicode(self):
        """
        Test that the other repodata is passed as a str even if it's a unicode object.
        """
        self.context.metadata_file_handle = mock.Mock()
        expected_call = u'some unicode'
        self.unit.render_other.return_value = expected_call
        self.context.add_unit_metadata(self.unit)
        self.context.metadata_file_handle.write.assert_called_once_with(
            expected_call)
        self.unit.render_other.assert_called_once_with('sha256')
Exemple #4
0
class OtherXMLFileContextTests(unittest.TestCase):
    def setUp(self):
        self.working_dir = tempfile.mkdtemp()
        self.context = OtherXMLFileContext(self.working_dir, 3, 'sha256')
        self.unit = mock.Mock()
        self.unit.render_other.return_value = 'somexml'

    def tearDown(self):
        shutil.rmtree(self.working_dir)

    def test_init(self):
        self.assertEquals(self.context.fast_forward, False)
        self.assertEquals(self.context.num_packages, 3)

    def test_add_unit_metadata(self):
        self.context.metadata_file_handle = mock.Mock()
        self.context.add_unit_metadata(self.unit)
        self.context.metadata_file_handle.write.assert_called_once_with('somexml')
        self.unit.render_other.assert_called_once_with('sha256')

    def test_add_unit_metadata_unicode(self):
        """
        Test that the other repodata is passed as a str even if it's a unicode object.
        """
        self.context.metadata_file_handle = mock.Mock()
        expected_call = u'some unicode'
        self.unit.render_other.return_value = expected_call
        self.context.add_unit_metadata(self.unit)
        self.context.metadata_file_handle.write.assert_called_once_with(expected_call)
        self.unit.render_other.assert_called_once_with('sha256')
Exemple #5
0
class PrimaryXMLFileContextTests(unittest.TestCase):

    def setUp(self):
        self.working_dir = tempfile.mkdtemp()
        self.context = OtherXMLFileContext(self.working_dir, 3)

    def tearDown(self):
        shutil.rmtree(self.working_dir)

    def test_init(self):
        self.assertEquals(self.context.fast_forward, False)
        self.assertEquals(self.context.num_packages, 3)

    def test_add_unit_metadata(self):
        self.context.metadata_file_handle = mock.Mock()
        self.context.add_unit_metadata(mock.Mock(metadata={'repodata': {'other': 'bar'}}))
        self.context.metadata_file_handle.write.assert_called_once_with('bar')
    def test_other_unit_metadata(self):

        path = os.path.join(self.metadata_file_dir, REPO_DATA_DIR_NAME, OTHER_XML_FILE_NAME)

        unit = self._generate_rpm("uh-huh")

        context = OtherXMLFileContext(self.metadata_file_dir, 1)

        context._open_metadata_file_handle()
        context.add_unit_metadata(unit)
        context._close_metadata_file_handle()

        self.assertNotEqual(os.path.getsize(path), 0)

        handle = gzip.open(path, "r")
        content = handle.read()
        handle.close()

        self.assertEqual(content, "OTHER")