def test_nokey_dict(self): pv = PrettyValues() pv.newcol(vformat="i") pv.newcol(cname="Column2") pv.newcol(vformat="+5.2f") values = {"bar": 0, "sym": "yhoo", "close": 23.45} self.assertRaises(KeyError, pv.format, [values])
def test_format_invalids(self): pv = PrettyValues() pv.newcol("open") values = [] values.append({"bar": 0, "sym": "yhoo", "close": 23.45}) self.assertRaises(KeyError, pv.format, values) pv = PrettyValues() pv.newcol(2) values = [] values.append([0, "yhoo"]) self.assertRaises(IndexError, pv.format, values)
def test_nokey_lol(self): pv = PrettyValues() pv.newcol(vformat="i") pv.newcol(cname="Column2") pv.newcol(vformat="+5.2f") values = [] values.append([0, "yhoo", 23.45]) values.append([1, "goog", 200.4565]) values.append([2, "newp", 1.00]) results = pv.format(values) self.assertEquals(results[0], ["0", "Column2", "2 "]) self.assertEquals(results[1], ["0", "yhoo ", "+ 23.45"]) self.assertEquals(results[2], ["1", "goog ", "+200.46"]) self.assertEquals(results[3], ["2", "newp ", "+ 1.00"]) self.assertEquals(len(results), 4)
def test_format_lol_inf_4(self): pv = PrettyValues() pv.newcol(0, "i") pv.newcol(1, cname="Column2") pv.newcol(2, "=+5.1f") values = [] values.append([0, "yhoo", 2]) values.append([1, "goog", 5]) values.append([2, "newp", 1]) values.append([3, "nan", "nan"]) values.append([4, "newp", "inf"]) values.append([5, "newp", "+inf"]) values.append([6, "newp", "-inf"]) results = pv.format(values, useheader=False) self.assertEquals(results[0], ["0", "yhoo", "+ 2.0"]) self.assertEquals(results[1], ["1", "goog", "+ 5.0"]) self.assertEquals(results[2], ["2", "newp", "+ 1.0"]) self.assertEquals(results[3], ["3", "nan ", " nan"]) self.assertEquals(results[4], ["4", "newp", "+ inf"]) self.assertEquals(results[5], ["5", "newp", "+ inf"]) self.assertEquals(results[6], ["6", "newp", "- inf"]) self.assertEquals(len(results), 7)
def test_text_title_1col(self): pv = PrettyValues() pv.newcol(0, "+5.2f") values = [] values.append([23.45]) values.append([200.4565]) values.append([1.00]) results = pv.text(values, title="Title").split("\n") self.assertEquals(results[0], "+---------+") self.assertEquals(results[1], "| Title |") self.assertEquals(results[2], "+---------+") self.assertEquals(results[3], "| 0 |") self.assertEquals(results[4], "+---------+") self.assertEquals(results[5], "| + 23.45 |") self.assertEquals(results[6], "| +200.46 |") self.assertEquals(results[7], "| + 1.00 |") self.assertEquals(results[8], "+---------+") self.assertEquals(len(results), 9)
def test_text_title_trunc(self): pv = PrettyValues() pv.newcol(0, "i") pv.newcol(1, "+5.2f") values = [] values.append([0, 23.45]) values.append([1, 200.4565]) values.append([2, 1.00]) results = pv.text(values, title="Test Title 2").split("\n") self.assertEquals(results[0], "+-------------+") self.assertEquals(results[1], "| Test Title |") self.assertEquals(results[2], "+---+---------+") self.assertEquals(results[3], "| 0 | 1 |") self.assertEquals(results[4], "+---+---------+") self.assertEquals(results[5], "| 0 | + 23.45 |") self.assertEquals(results[6], "| 1 | +200.46 |") self.assertEquals(results[7], "| 2 | + 1.00 |") self.assertEquals(results[8], "+---+---------+") self.assertEquals(len(results), 9)
def test_format_dict(self): pv = PrettyValues() pv.newcol("bar", "i") pv.newcol("sym", cname="Column2") pv.newcol("close", "+5.2f") values = {"bar": 0, "sym": "yhoo", "close": 23.45} results = pv.format([values]) self.assertEquals(results[0], ["bar", "Column2", "close "]) self.assertEquals(results[1], [" 0", "yhoo ", "+23.45"]) self.assertEquals(len(results), 2)
def test_format_list(self): pv = PrettyValues() pv.newcol(0, "i") pv.newcol(1, cname="Column2") pv.newcol(2, "+5.2f") values = [0, "yhoo", 23.45] results = pv.format([values]) self.assertEquals(results[0], ["0", "Column2", "2 "]) self.assertEquals(results[1], ["0", "yhoo ", "+23.45"]) self.assertEquals(len(results), 2)
def test_text_dict(self): pv = PrettyValues() pv.newcol("bar", "i") pv.newcol("sym", cname="Column2") pv.newcol("close", "+5.2f") values = {"bar": 0, "sym": "yhoo", "close": 23.45} results = pv.text([values]).split("\n") self.assertEquals(results[0], "+-----+---------+--------+") self.assertEquals(results[1], "| bar | Column2 | close |") self.assertEquals(results[2], "+-----+---------+--------+") self.assertEquals(results[3], "| 0 | yhoo | +23.45 |") self.assertEquals(results[4], "+-----+---------+--------+") self.assertEquals(len(results), 5)
def test_text_list(self): pv = PrettyValues() pv.newcol(0, "i") pv.newcol(1, cname="Column2") pv.newcol(2, "+5.2f") values = [0, "yhoo", 23.45] results = pv.text([values]).split("\n") self.assertEquals(results[0], "+---+---------+--------+") self.assertEquals(results[1], "| 0 | Column2 | 2 |") self.assertEquals(results[2], "+---+---------+--------+") self.assertEquals(results[3], "| 0 | yhoo | +23.45 |") self.assertEquals(results[4], "+---+---------+--------+") self.assertEquals(len(results), 5)
def test_format_fill(self): pv = PrettyValues() pv.newcol(0, "i") pv.newcol(1, vfill=".", cname="Column2") pv.newcol(2, "+5.2f", cname="Close", cformat="^", cfill="_") values = [] values.append([0, "yhoo", 23.45]) values.append([1, "goog", 200.4565]) values.append([2, "newp", 1.00]) results = pv.format(values) self.assertEquals(results[0], ["0", "Column2", "_Close_"]) self.assertEquals(results[1], ["0", "yhoo...", "+ 23.45"]) self.assertEquals(results[2], ["1", "goog...", "+200.46"]) self.assertEquals(results[3], ["2", "newp...", "+ 1.00"]) self.assertEquals(len(results), 4)
def test_format_lod(self): pv = PrettyValues() pv.newcol("bar", "i") pv.newcol("sym", cname="Symbol") pv.newcol("close", "+5.2f") values = [] values.append({"bar": 0, "sym": "yhoo", "close": 23.45}) values.append({"bar": 1, "sym": "goog", "close": 200.4565}) values.append({"bar": 2, "sym": "newp", "close": 1.00}) results = pv.format(values) self.assertEquals(results[0], ["bar", "Symbol", "close "]) self.assertEquals(results[1], [" 0", "yhoo ", "+ 23.45"]) self.assertEquals(results[2], [" 1", "goog ", "+200.46"]) self.assertEquals(results[3], [" 2", "newp ", "+ 1.00"]) self.assertEquals(len(results), 4)
def test_text_lol(self): pv = PrettyValues() pv.newcol(0, "i") pv.newcol(1, cname="Column2") pv.newcol(2, "+5.2f") values = [] values.append([0, "yhoo", 23.45]) values.append([1, "goog", 200.4565]) values.append([2, "newp", 1.00]) results = pv.text(values).split("\n") self.assertEquals(results[0], "+---+---------+---------+") self.assertEquals(results[1], "| 0 | Column2 | 2 |") self.assertEquals(results[2], "+---+---------+---------+") self.assertEquals(results[3], "| 0 | yhoo | + 23.45 |") self.assertEquals(results[4], "| 1 | goog | +200.46 |") self.assertEquals(results[5], "| 2 | newp | + 1.00 |") self.assertEquals(results[6], "+---+---------+---------+") self.assertEquals(len(results), 7)
def test_format_lol_noheader(self): pv = PrettyValues() pv.newcol(0, "i") pv.newcol(1, cname="Column2") pv.newcol(2, "+5.2f") values = [] values.append([0, "yhoo", 23.45]) values.append([1, "goog", 200.4565]) values.append([2, "newp", 1.00]) values.append([3, "nan", "nan"]) values.append([4, "newp", "inf"]) values.append([5, "newp", "-inf"]) results = pv.format(values, useheader=False) self.assertEquals(results[0], ["0", "yhoo", "+ 23.45"]) self.assertEquals(results[1], ["1", "goog", "+200.46"]) self.assertEquals(results[2], ["2", "newp", "+ 1.00"]) self.assertEquals(results[3], ["3", "nan ", " nan"]) self.assertEquals(results[4], ["4", "newp", "+ inf"]) self.assertEquals(results[5], ["5", "newp", "- inf"]) self.assertEquals(len(results), 6)
def test_text_lod(self): pv = PrettyValues() pv.newcol("bar", "i") pv.newcol("sym", cname="Symbol") pv.newcol("close", "+5.2f") values = [] values.append({"bar": 0, "sym": "yhoo", "close": 23.45}) values.append({"bar": 1, "sym": "goog", "close": 200.4565}) values.append({"bar": 2, "sym": "newp", "close": 1.00}) values.append({"bar": 3, "sym": "nan", "close": "nan"}) results = pv.text(values).split("\n") self.assertEquals(results[0], "+-----+--------+---------+") self.assertEquals(results[1], "| bar | Symbol | close |") self.assertEquals(results[2], "+-----+--------+---------+") self.assertEquals(results[3], "| 0 | yhoo | + 23.45 |") self.assertEquals(results[4], "| 1 | goog | +200.46 |") self.assertEquals(results[5], "| 2 | newp | + 1.00 |") self.assertEquals(results[6], "| 3 | nan | nan |") self.assertEquals(results[7], "+-----+--------+---------+") self.assertEquals(len(results), 8)