为代码的出现下载拼图输入并合成pytest fixture
pytest-aoc的Python项目详细描述
葡萄球菌
这个pytest插件为[代码的出现][1]下载拼图输入,并且 综合测试中可以使用的设备。
安装和配置
安装很简单:pip install pytest-aoc
接下来需要配置
two事情:插件应该为哪个事件(年份)下载输入,以及
有效的会话cookie。通常有效期为一个月左右。
要设置年份,请将其放入setup.cfg
:
[tool:pytest]
aoc_year = 2018
然后,在名为.cookie
的文件中放入一个有效的会话ID,并将该文件命名为
在你的房间里
有了这两件事,当运行pytest时,这个插件将下载 任何缺少的输入,并生成可在测试中使用的pytest fixture 函数,请参见下面的“using”和“fixtures”。
使用
正确配置此插件后,可以编写如下测试:
def test_01a(day01_numbers):
assert sum(day01_numbers) == 123
这里,参数day01_numbers
是一个fixture,它包含
文件中的每一行input/day01.txt
固定装置
这些固定装置是为每一天合成的他们没有被处决 直到你在考试中要求他们
dayNN_text
:输入文件中的文本,但去掉任何前导和尾随空格。dayNN_raw
:输入文件中的原始文本。dayNN_lines
:行的列表。dayNN_numbers
:数字列表。dayNN_number
:一个数字。dayNN_grid
:表示文本值网格的列表列表。dayNN_number_grid
:表示数字网格的列表列表。
命令行和配置选项
可以从命令行传递这些选项,也可以在setup.cfg中设置它们这个 命令行优先
--aoc-year
/aoc_year
:下载拼图输入的年份。 (必须)--aoc-session-id
/aoc_session_id
:用于请求的会话ID 拼图输入。(可选)--aoc-session-file
/aoc_session_file
:从中读取 会话ID。(可选;默认值.cookie
)--aoc-input-dir
/aoc_input_dir
:存储输入的目录。 如果不存在,将被创建。(可选;默认值input
)