def test_solve_no_plugs(mocker): mock = mocker.patch("pkg_resources.iter_entry_points", return_value=iter([])) puzzle = Puzzle(year=2018, day=1) expected = AocdError("Puzzle.solve is only available with unique entry point") with pytest.raises(expected): puzzle.solve() mock.assert_called_once_with(group="adventofcode.user")
def test_solve_one_plug(aocd_dir, mocker): input_path = aocd_dir / "thetesttoken" / "2018_01_input.txt" input_path.write_text("someinput") ep = mocker.Mock() ep.name = "myplugin" mocker.patch("pkg_resources.iter_entry_points", return_value=iter([ep])) puzzle = Puzzle(year=2018, day=1) puzzle.solve() ep.load.return_value.assert_called_once_with(year=2018, day=1, data="someinput")