Ejemplo n.º 1
0
 def test_arguments_not_enough(self, capsys):
     """Verify that we get an error with missing args."""
     with raises(SystemExit):
         parser = osa_differ.create_parser()
         parser.parse_args([])
     out, err = capsys.readouterr()
     assert "usage" in err
Ejemplo n.º 2
0
 def test_arguments_version_mappings(self, monkeypatch):
     """Test if we can parse version mapping arguments."""
     parser = osa_differ.create_parser()
     args = vars(
         parser.parse_args(
             ['13.3.0', '13.3.1', '--version-mappings',
              'foo;1.0.0:v1.0.0']))
     assert args['old_commit'][0] == '13.3.0'
     assert args['new_commit'][0] == '13.3.1'
     assert args['version_mappings'] == {'foo': {'1.0.0': 'v1.0.0'}}
Ejemplo n.º 3
0
    def test_publish_report_quiet(self):
        """Verify that we can skip publishing to stdout."""
        report = "Sample report"

        parser = osa_differ.create_parser()
        args = parser.parse_args(['HEAD~1', 'HEAD', '--quiet'])

        result = osa_differ.publish_report(report, args, 'HEAD~1', 'HEAD')

        assert result == ''
Ejemplo n.º 4
0
    def test_publish_report_to_file(self, tmpdir):
        """Verify that we can write a report to a file."""
        report = "Sample report"

        p = tmpdir.mkdir('test')

        parser = osa_differ.create_parser()
        filearg = "{0}/test.rst".format(str(p))
        args = parser.parse_args(['HEAD~1', 'HEAD', '--file', filearg])

        result = osa_differ.publish_report(report, args, 'HEAD~1', 'HEAD')

        assert 'Report written to file' in result
        assert 'test.rst' in result
Ejemplo n.º 5
0
    def test_publish_report_to_gist(self):
        """Verify that we can post the report to a gist."""
        json_body = {'html_url': 'https://example.com/'}
        httpretty.register_uri(httpretty.POST,
                               "https://api.github.com/gists",
                               body=json.dumps(json_body))

        report = "Sample report"

        parser = osa_differ.create_parser()
        args = parser.parse_args(['HEAD~1', 'HEAD', '--gist'])

        result = osa_differ.publish_report(report, args, 'HEAD~1', 'HEAD')

        assert 'Report posted to GitHub Gist' in result
Ejemplo n.º 6
0
    def test_make_osa_report(self, tmpdir):
        """Verify that we can make the OSA header report."""
        p = tmpdir.mkdir('test')
        path = str(p)
        repo = Repo.init(path)
        file = p / 'test.txt'
        file.write_text(u'Testing1', encoding='utf-8')
        repo.index.add(['test.txt'])
        repo.index.commit('Testing 1')
        file.write_text(u'Testing2', encoding='utf-8')
        repo.index.add(['test.txt'])
        repo.index.commit('Testing 2')

        parser = osa_differ.create_parser()
        args = parser.parse_args(['HEAD~1', 'HEAD'])
        report = osa_differ.make_osa_report(path, 'HEAD~1', "HEAD", args)
        assert "HEAD~1" in report
        assert "OpenStack-Ansible Diff Generator" in report
Ejemplo n.º 7
0
 def test_create_parser(self):
     """Verify that we can create an argument parser."""
     parser = osa_differ.create_parser()
     assert isinstance(parser, argparse.ArgumentParser)
Ejemplo n.º 8
0
 def test_arguments_sufficient(self):
     """Verify that we get args properly with right args passed."""
     parser = osa_differ.create_parser()
     args = vars(parser.parse_args(['13.3.0', '13.3.1']))
     assert args['old_commit'][0] == '13.3.0'
     assert args['new_commit'][0] == '13.3.1'