def test_half_take(monkeypatch): def half_take(self, amount): amount = int(amount / 2) if amount > self.num_people: amount = self.num_people self.num_people -= amount return amount monkeypatch.setattr(sk.Line, 'take', half_take) line = sk.Line(10) res = line.take(5) assert res == 2 assert line.num_people == 8
def test_line_sizes(size, amt, answer): line = sk.Line(size) res = line.take(amt) assert line.num_people == answer
def line_n(request): size = request.node.get_marker('line_size').args[0] line = sk.Line(size) return line
def test_lines_bad(size): with pytest.raises(TypeError): line = sk.Line(size) line.take(1)
def line(): return sk.Line(5)
def line_5(): line = sk.Line(5) return line
def test_lift_one_bench(): line = sk.Line(5) lift = sk.Lift(10, sk.Quad) res = lift.one_bench(line) assert res == {'loaded': 4, 'num_benches': 1, 'unloaded': 0}
def test_line_take(): line = sk.Line(5) res = line.take(7) assert res == 5 assert line.num_people == 0
def test_line_sizes(l, tk, exp): line = skilift.Line(l) line.take(tk) assert exp == line.num_people
def test_line_take(): line = skilift.Line(5) assert line.num_people == 5 assert 5 == line.take(7) assert 0 == line.num_people
def test_line_bad(l, e): line = skilift.Line(l) with pytest.raises(e): line.take(1)
def test_lift_one_bench(): line = skilift.Line(5) quad = skilift.Lift(10, skilift.Quad) result = quad.one_bench(line) assert result == {'loaded': 4, 'num_benches': 1, 'unloaded': 0}
def test_line_bad(size, error): with pytest.raises(error): line = sk.Line(size) res = line.take(1) assert res == 9
def test_line_sizes(size, take, soln): line = sk.Line(size) line.take(take) assert line.num_people == soln
def test_bench6(BenchN): lift = sk.Lift(10, BenchN) line5 = sk.Line(5) res = lift.one_bench(line=line5) assert res == {'loaded': 5, 'num_benches': 1, 'unloaded': 0}