Exemplo n.º 1
0
    def test_prebuilt(self):
        ''' test --name --prebuilt '''

        argv = ['fedora-review', '-rpn', 'python-spiffgtkwidgets']
        argv.extend(['--mock-config', 'fedora-16-i386'])
        sys.argv = argv
        os.chdir('prebuilt')
        if os.path.exists('python-spiffgtkwidgets'):
            shutil.rmtree('python-spiffgtkwidgets')
        ReviewDirs.reset()
        Settings.init(True)
  
        rpms = glob('/var/lib/mock/fedora-16-i386/*.rpm')
        for r in rpms:
            os.unlink(r)

        rh = ReviewHelper()
        sys.stdout = open( '/dev/null', 'w')
        rh.run()
        sys.stdout = sys.__stdout__
        self.assertEqual(len(rpms), 0)
        rv = 'python-spiffgtkwidgets-review.txt'
        with open(os.path.abspath(rv)) as f:
            log = '\n'.join(f.readlines())
        self.assertIn('Using prebuilt rpms', log)
        os.chdir(startdir)
Exemplo n.º 2
0
    def test_mock_options(self):
        ''' test -o/--mock-options and -m/mock-config '''
        dflt = os.readlink('/etc/mock/default.cfg')
        v = '16' if '17' in dflt else '17'
        d = os.path.join(os.getcwd(), 'results')
        if os.path.exists(d):
            shutil.rmtree(d)
        os.mkdir(d)
        cmd = 'fedora-review -n python-test -m fedora-%s-i386' \
              ' -o=--resultdir=%s --no-report' % (v, d)
        self.init_test(cmd.split()) 

        rh = ReviewHelper()
        rh.run()
        rpms = glob(os.path.join(d, '*fc%s*.rpm' % v))
        self.assertTrue(len(rpms) > 0)
Exemplo n.º 3
0
    def run_spec(self, spec):
        ''' Run all tests for a test spec.... '''

        # pylint: disable=C0111,W0212

        class Null(object):
            def write(self, msg):
                pass

        argv = ['-rn', spec.testcase, '-x', 'generic-large-docs', '--no-build']
        argv.extend(spec.args)
        self.init_test(spec.testcase, wd=spec.workdir, argv=argv)
        helper = ReviewHelper()
        Mock.clear_builddir()
        if os.path.exists('BUILD'):
            if os.path.islink('BUILD'):
                os.unlink('BUILD')
            else:
                shutil.rmtree('BUILD')
        stdout = sys.stdout
        sys.stdout = Null()
        rc = helper.run('review.txt')
        self.assertEqual(rc, 0)
        sys.stdout = stdout
        checkdict = helper.checks.get_checks()
        for check in checkdict.itervalues():
            self.assertTrue(check.is_run)
            if check.is_passed or check.is_pending or check.is_failed:
                self.assertIn(check.group, spec.groups_ok,
                              check.name + ': group is ' + check.group)
        for (what, check) in spec.expected:
            state = checkdict[check].state
            if what in ['pass', 'fail', 'pending']:
                self.assertEqual(state, what,
                                 check + ': state is ' + str(state))
            elif what == 'na':
                self.assertEqual(state, None,
                                 check + ': state is ' + str(state))
            elif what.startswith == 'in_attachment':
                self.assertIn(
                    what.split(':')[1], checkdict[check].attachments[0].text)
            else:
                self.assertFalse(what)
Exemplo n.º 4
0
    def test_git_source(self):
        ''' test use of local source0 tarball '''

        argv = ['fedora-review', '-rpn', 'get-flash-videos']
        argv.extend(['--mock-config', 'fedora-16-i386-rpmfusion_nonfree'])
        sys.argv = argv
        os.chdir('git-source')
        if os.path.exists('get-flash-videos'):
            shutil.rmtree('get-flash-videos')
        ReviewDirs.reset()
        Settings.init(True)
  
        rh = ReviewHelper()
        sys.stdout = open( '/dev/null', 'w')
        rh.run()
        sys.stdout = sys.__stdout__
        rv = 'get-flash-videos-review.txt'
        with open(os.path.abspath(rv)) as f:
            log = f.read()
        self.assertIn('Using local file' , log)
        os.chdir(startdir)