示例#1
0
    def test_parse_repo(self):
        repo = parse_repo(self.new_repo_dir,
                          self.current_repo_dir,
                          codename='stable')
        self.assertEqual(repo.repo_name, 'stable')
        self.assertEqual(repo.metadata.architectures, ['i386', 'amd64'])
        self.assertEqual(repo.metadata.release['label'], self.repo_name)
        self.assertEqual(repo.metadata.release['description'],
                         self.repo_description)

        comp_arch_bin = repo.metadata.get_component_arch_binary(
            'main', 'amd64')
        self.assertEqual(
            [self.repo_packages['pool/main/f/foo/foo_0.0.1-1_amd64.deb']],
            list(comp_arch_bin.iter_packages()))
        # Make sure we have a Packages file
        pkgs_file = os.path.join(self.new_repo_dir, 'dists', 'stable', 'main',
                                 'binary-amd64', 'Packages')
        self.assertTrue(os.path.exists(pkgs_file))
        stobj = os.stat(pkgs_file)
        sz = stobj.st_size
        inode = stobj.st_ino
        # Make sure we removed the .gz we have created
        self.assertFalse(os.path.exists(pkgs_file + '.gz'))
        # Make sure we can correctly write packages back
        comp_arch_bin.write_packages(
            self.new_repo_dir, repo.metadata.release_dir(self.new_repo_dir))

        self.assertEqual(sz - 1, os.stat(pkgs_file).st_size)
        self.assertNotEqual(inode, os.stat(pkgs_file).st_ino)
示例#2
0
 def test_parse_remote_updates_repo(self):
     expected = u'Debian X Security Updates'
     url = "http://security.debian.org/debian-security"
     repo = parse_repo(self.new_repo_dir, url, codename='buster/updates')
     desc = repo.metadata.release['Description']
     self.assertEqual(expected, desc)
示例#3
0
 def test_parse_remote_repo(self):
     expected = u'Debian 3.1r8 Released 12th April 2008'
     url = "http://archive.debian.org/debian"
     repo = parse_repo(self.new_repo_dir, url, codename='sarge')
     desc = repo.metadata.release['Description']
     self.assertEqual(expected, desc)
示例#4
0
 def test_repo_parse(self, _parse):
     upstream = base.mock.MagicMock()
     parse_repo(self.new_repo_dir, upstream, codename='stable')
     _parse.assert_called_once_with(self.new_repo_dir,
                                    upstream,
                                    codename='stable')