Example #1
0
    def test_inline_as_command(self, mock_stdout, mock_argv):
        test_input = textwrap.dedent(six.u("""
        this is
        a test
        """))

        with patch("sys.stdin", new_callable=lambda: six.StringIO(test_input)):
            main()

        eq_(mock_stdout.getvalue(), test_input)
Example #2
0
    def test_inline_as_command(self, mock_stdout, mock_argv):
        test_input = textwrap.dedent("""
        this is
        a test
        """)

        with patch("sys.stdin", new_callable=lambda: StringIO(test_input)):
            main()

        ms_val = mock_stdout.getvalue()
        assert ms_val == test_input, "%r != %r" % (ms_val, test_input)
Example #3
0
    def test_inline_as_command(self, mock_stdout, mock_argv):
        test_input = textwrap.dedent(
            six.u("""
        this is
        a test
        """))

        with patch("sys.stdin", new_callable=lambda: six.StringIO(test_input)):
            main()

        eq_(mock_stdout.getvalue(), test_input)
Example #4
0
    def test_conversion_as_command(self, mock_stdout):
        with open(join(_here, "ansicolor.txt"), "rb") as input:
            test_data = "".join(read_to_unicode(input))

        with open(join(_here, "ansicolor.html"), "rb") as output:
            expected_data = "".join(read_to_unicode(output))

        with patch("sys.stdin", new_callable=lambda: six.StringIO(test_data)):
            main()

        html = mock_stdout.getvalue()

        eq_(len(html), len(expected_data), "Strings are not the same length.")
        eq_(html, expected_data, "Strings are not the same.")
Example #5
0
    def test_conversion_as_command(self, mock_stdout, mock_argv):
        with open(join(_here, "ansicolor.txt"), "rb") as input:
            test_data = "".join(read_to_unicode(input))

        with open(join(_here, "ansicolor.html"), "rb") as output:
            expected_data = "".join(read_to_unicode(output))

        def f():
            return StringIO(test_data)

        with patch("sys.stdin", new_callable=f):
            main()

        html = mock_stdout.getvalue()

        self.assertEqual(html, expected_data)
Example #6
0
    def test_conversion_as_command(self, mock_stdout, mock_argv):
        with open(join(_here, "ansicolor.txt"), "rb") as input:
            test_data = "".join(read_to_unicode(input))

        with open(join(_here, "ansicolor.html"), "rb") as output:
            expected_data = "".join(read_to_unicode(output))

        if six.PY3:
            f = lambda: six.StringIO(test_data)
        else:
            f = lambda: six.StringIO(test_data.encode('utf-8'))

        with patch("sys.stdin", new_callable=f):
            main()

        html = mock_stdout.getvalue()

        self.assertEqual(html, expected_data)
Example #7
0
    def test_partial_as_command(self, mock_stdout, mock_argv):
        rainbow = '\x1b[1m\x1b[40m\x1b[31mr\x1b[32ma\x1b[33mi\x1b[34mn\x1b[35mb\x1b[36mo\x1b[37mw\x1b[0m\n'
        with patch("sys.stdin", new_callable=lambda: six.StringIO(rainbow)):
            main()

        html = mock_stdout.getvalue().strip()

        if hasattr(html, 'decode'):
            html = html.decode('utf-8')

        expected = (six.u('<span class="ansi1"><span class="ansi40">') +
                    six.u('<span class="ansi31">r<span class="ansi32">a') +
                    six.u('<span class="ansi33">i<span class="ansi34">n') +
                    six.u('<span class="ansi35">b<span class="ansi36">o') +
                    six.u('<span class="ansi37">w') +
                    six.u('</span>')*9)
        assert isinstance(html, six.text_type)
        assert isinstance(expected, six.text_type)
        self.assertEqual(expected, html)
Example #8
0
    def test_conversion_as_command(self, mock_stdout, mock_argv):
        with open(join(_here, "ansicolor.txt"), "rb") as input:
            test_data = "".join(read_to_unicode(input))

        with open(join(_here, "ansicolor.html"), "rb") as output:
            expected_data = "".join(read_to_unicode(output))

        if six.PY3:
            f = lambda: six.StringIO(test_data)
        else:
            f = lambda: six.StringIO(test_data.encode('utf-8'))

        with patch("sys.stdin", new_callable=f):
            main()

        html = mock_stdout.getvalue()

        eq_(len(html), len(expected_data), "Strings are not the same length.")
        eq_(html, expected_data, "Strings are not the same.")
Example #9
0
    def test_partial_as_command(self, mock_stdout, mock_argv):
        rainbow = "\x1b[1m\x1b[40m\x1b[31mr\x1b[32ma\x1b[33mi\x1b[34mn\x1b[35mb\x1b[36mo\x1b[37mw\x1b[0m\n"
        with patch("sys.stdin", new_callable=lambda: StringIO(rainbow)):
            main()

        html = mock_stdout.getvalue().strip()

        if hasattr(html, "decode"):
            html = html.decode("utf-8")

        expected = ('<span class="ansi1"></span>' +
                    '<span class="ansi1 ansi40"></span>' +
                    '<span class="ansi1 ansi31 ansi40">r</span>' +
                    '<span class="ansi1 ansi32 ansi40">a</span>' +
                    '<span class="ansi1 ansi33 ansi40">i</span>' +
                    '<span class="ansi1 ansi34 ansi40">n</span>' +
                    '<span class="ansi1 ansi35 ansi40">b</span>' +
                    '<span class="ansi1 ansi36 ansi40">o</span>' +
                    '<span class="ansi1 ansi37 ansi40">w</span>')
        assert isinstance(html, str)
        assert isinstance(expected, str)
        self.assertEqual(expected, html)
Example #10
0
    def test_partial_as_command(self, mock_stdout, mock_argv):
        rainbow = "\x1b[1m\x1b[40m\x1b[31mr\x1b[32ma\x1b[33mi\x1b[34mn\x1b[35mb\x1b[36mo\x1b[37mw\x1b[0m\n"
        with patch("sys.stdin", new_callable=lambda: six.StringIO(rainbow)):
            main()

        html = mock_stdout.getvalue().strip()

        if hasattr(html, "decode"):
            html = html.decode("utf-8")

        expected = (
            six.u('<span class="ansi1"></span>')
            + six.u('<span class="ansi1 ansi40"></span>')
            + six.u('<span class="ansi1 ansi31 ansi40">r</span>')
            + six.u('<span class="ansi1 ansi32 ansi40">a</span>')
            + six.u('<span class="ansi1 ansi33 ansi40">i</span>')
            + six.u('<span class="ansi1 ansi34 ansi40">n</span>')
            + six.u('<span class="ansi1 ansi35 ansi40">b</span>')
            + six.u('<span class="ansi1 ansi36 ansi40">o</span>')
            + six.u('<span class="ansi1 ansi37 ansi40">w</span>')
        )
        assert isinstance(html, six.text_type)
        assert isinstance(expected, six.text_type)
        self.assertEqual(expected, html)
Example #11
0
from ansi2html.converter import main

if __name__ == "__main__":
    main()