Exemplo n.º 1
0
 def test_indented_notes(self):
     self.assertEqual(
         format_sysinfo(
             notes=["Something's wrong", "You should look at it", "Really"],
             indent=">>"), ">>=> Something's wrong\n"
         ">>=> You should look at it\n"
         ">>=> Really")
Exemplo n.º 2
0
 def test_more_notes(self):
     self.assertEqual(
         format_sysinfo(
             notes=["Something's wrong", "You should look at it", "Really"
                    ]), "=> Something's wrong\n"
         "=> You should look at it\n"
         "=> Really")
Exemplo n.º 3
0
 def test_header_and_footnote(self):
     # Warming up.
     self.assertEqual(
         format_sysinfo(headers=[("Header", "Value")],
                        footnotes=["Footnote"]), "Header: Value\n"
         "\n"
         "Footnote")
Exemplo n.º 4
0
 def test_header_note_and_footnote(self):
     # Nice.
     self.assertEqual(
         format_sysinfo(headers=[("Header", "Value")],
                        notes=["Note"],
                        footnotes=["Footnote"]), "Header: Value\n"
         "\n"
         "=> Note\n"
         "\n"
         "Footnote")
Exemplo n.º 5
0
    def test_wrap_long_notes(self):
        self.assertEqual(
            format_sysinfo(notes=[
                "I do believe that a very long note, such as one that is "
                "longer than about 50 characters, should wrap at the "
                "specified width."
            ],
                           width=50,
                           indent="Z"), """\
Z=> I do believe that a very long note, such as
    one that is longer than about 50 characters,
    should wrap at the specified width.""")
Exemplo n.º 6
0
 def test_value_alignment(self):
     output = format_sysinfo([("Header one", "Value one"),
                              ("Header2", "Value2"), ("Header3", "Value3"),
                              ("Header4", "Value4"),
                              ("Header5", "Value five")],
                             width=45)
     # These headers and values were crafted to cover several cases:
     #
     # - Header padding (Header2 and Header3)
     # - Value padding (Value2)
     # - Lack of value padding due to a missing last column (Value3)
     # - Lack of value padding due to being a last column (Value4)
     #
     self.assertEqual(
         output, "Header one: Value one   Header4: Value4\n"
         "Header2:    Value2      Header5: Value five\n"
         "Header3:    Value3")
Exemplo n.º 7
0
 def test_indented_headers_notes_and_footnotes(self):
     # Hot!
     self.assertEqual(
         format_sysinfo(headers=[("Header1", "Value1"),
                                 ("Header2", "Value2"),
                                 ("Header3", "Value3")],
                        notes=["Note1", "Note2"],
                        footnotes=["Footnote1", "Footnote2"],
                        indent="  ",
                        width=36), "  Header1: Value1   Header3: Value3\n"
         "  Header2: Value2\n"
         "\n"
         "  => Note1\n"
         "  => Note2\n"
         "\n"
         "  Footnote1\n"
         "  Footnote2")
Exemplo n.º 8
0
 def test_one_header(self):
     output = format_sysinfo([("Header", "Value")])
     self.assertEqual(output, "Header: Value")
Exemplo n.º 9
0
 def test_indented_footnotes(self):
     # Barely more interesting.
     self.assertEqual(
         format_sysinfo(footnotes=["Graphs at http://...", "Lunch at ..."],
                        indent=">>"), ">>Graphs at http://...\n"
         ">>Lunch at ...")
Exemplo n.º 10
0
 def test_more_footnotes(self):
     # Still dumb.
     self.assertEqual(
         format_sysinfo(footnotes=["Graphs at http://...", "Lunch at ..."]),
         "Graphs at http://...\n"
         "Lunch at ...")
Exemplo n.º 11
0
 def test_one_footnote(self):
     # Pretty dumb.
     self.assertEqual(format_sysinfo(footnotes=["Graphs at http://..."]),
                      "Graphs at http://...")
Exemplo n.º 12
0
 def test_header_and_note(self):
     self.assertEqual(
         format_sysinfo(headers=[("Header", "Value")], notes=["Note"]),
         "Header: Value\n"
         "\n"
         "=> Note")
Exemplo n.º 13
0
 def test_parallel_headers_with_just_enough_space(self):
     output = format_sysinfo([("Header1", "Value1"), ("Header2", "Value2")],
                             width=34)
     self.assertEqual(output, "Header1: Value1   Header2: Value2")
Exemplo n.º 14
0
 def test_stacked_headers_which_barely_doesnt_fit(self):
     output = format_sysinfo([("Header1", "Value1"), ("Header2", "Value2")],
                             width=33)
     self.assertEqual(output, "Header1: Value1\nHeader2: Value2")
Exemplo n.º 15
0
 def test_no_headers(self):
     output = format_sysinfo([])
     self.assertEqual(output, "")
Exemplo n.º 16
0
 def test_parallel_and_stacked_headers(self):
     headers = [("Header%d" % i, "Value%d" % i) for i in range(1, 6)]
     output = format_sysinfo(headers)
     self.assertEqual(
         output, "Header1: Value1   Header3: Value3   Header5: Value5\n"
         "Header2: Value2   Header4: Value4")
Exemplo n.º 17
0
 def test_indent_headers_stacked_which_barely_doesnt_fit(self):
     output = format_sysinfo([("Header1", "Value1"), ("Header2", "Value2")],
                             indent=">>",
                             width=35)
     self.assertEqual(output, ">>Header1: Value1\n" ">>Header2: Value2")
Exemplo n.º 18
0
 def test_indent_headers_in_parallel_with_just_enough_space(self):
     output = format_sysinfo([("Header1", "Value1"), ("Header2", "Value2")],
                             indent=">>",
                             width=36)
     self.assertEqual(output, ">>Header1: Value1   Header2: Value2")
Exemplo n.º 19
0
 def test_stacked_headers_with_clearly_insufficient_space(self):
     output = format_sysinfo([("Header1", "Value1"), ("Header2", "Value2")],
                             width=1)
     self.assertEqual(output, "Header1: Value1\n" "Header2: Value2")
Exemplo n.º 20
0
 def test_one_note(self):
     self.assertEqual(format_sysinfo(notes=["Something's wrong!"]),
                      "=> Something's wrong!")
Exemplo n.º 21
0
 def show_output(result):
     print(
         format_sysinfo(sysinfo.get_headers(),
                        sysinfo.get_notes(),
                        sysinfo.get_footnotes(),
                        indent="  "))