python - PyTest 和多行输出
问题描述
我正在为我已经编写的脚本编写一些 PyTest,以证明它有效。第一个函数的返回是列表的形式,所以这很好,但 func2 是另一回事,因为它返回一个多林答案,我找不到任何东西来解决这个小事实。我的尝试,对我来说最有意义的是:
x = '''
The X axis is: >Head
X = ABCA
The Y axis is: >Header
Y = ACCA
ACCA
====|
A--A|A
----|B
-CC-|C
A--A|A
'''
def test_result_of_outter_dotplot():
assert outter_dotplot(['A', '-', '-', 'A', '|A\n', '-', '-', '-', '-', '|B\n', '-', 'C', 'C', '-', '|C\n', 'A', '-', '-', 'A', '|A\n'],'ABCA', 'ACCA') == x
有人知道从那里去哪里吗?
Func3 创建了一个 ascii 版本的绘图,所以这也可以回答这个问题,然后 Func4 创建一个 matplotlib 图,所以如果你有一个线索,他们祈祷告诉你去哪里,因为此刻我要测试一个输入plt.imshow 并使用它们来确认功能。
解决方案
没关系,事实证明我已经超越了自己,并在其中添加了直到最后才添加的东西。
x = '''ACCA
====|
A--A|A
----|B
-CC-|C
A--A|A
'''
def test_result_of_outter_dotplot():
assert outter_dotplot(['A', '-', '-', 'A', '|A\n', '-', '-', '-', '-', '|B\n', '-', 'C', 'C', '-', '|C\n', 'A', '-', '-', 'A', '|A\n'],'ABCA', 'ACCA') == x
这是正确的,多行确实像我想的那样工作。