Exemplo n.º 1
0
    def test_report_steps(self):
        steps = ('A', 'B', 'C')
        action = ('downloading', 'package-xyz-1.0-1.f16.rpm')

        # test and validation
        pr = ProgressReport()
        pr._updated = Mock()
        for s in steps:
            # validate steps pushed with status of None
            pr.push_step(s)
            name, status = pr.steps[-1]
            self.assertEqual(name, s)
            self.assertTrue(status is None)
            # validate details cleared on state pushed
            self.assertEqual(len(pr.details), 0)
            # set the action
            pr.set_action(action[0], action[1])
            # validate action
            self.assertEqual(pr.details['action'], action[0])
            self.assertEqual(pr.details['package'], action[1])
            # validate previous step status is set (True) on next
            # push when status is None
            prev = pr.steps[-2:-1]
            if prev:
                self.assertTrue(prev[0][1])
Exemplo n.º 2
0
    def test_set_action(self, _updated):
        pr = ProgressReport()
        package = 'openssl'
        action = '100'

        # test
        pr.set_action(action, package)

        # validation
        self.assertEqual(pr.details, dict(action=action, package=package))
        self.assertTrue(_updated.called)