def test_setters_dont_disable_and_invalidate_if_setting_to_equal_value(self): sokoban_plus = SokobanPlus(5, "1 2 0 3 0", "3 1 0 2 0 0 0") sokoban_plus.is_enabled = True assert sokoban_plus.is_valid == True assert sokoban_plus.is_enabled == True sokoban_plus.boxorder = '1 2 0 3 0' assert sokoban_plus.boxorder == '1 2 0 3' assert sokoban_plus.is_valid == True assert sokoban_plus.is_enabled == True sokoban_plus.goalorder = '3 1 0 2 0 0 0' assert sokoban_plus.goalorder == '3 1 0 2' assert sokoban_plus.is_valid == True assert sokoban_plus.is_enabled == True
def test_setters_disable_and_invalidate_instance(self): sokoban_plus = SokobanPlus(5, "1 2 0 3 0 ", "3 1 0 2 0 0 0") sokoban_plus.is_enabled = True assert sokoban_plus.is_valid == True assert sokoban_plus.is_enabled == True sokoban_plus.boxorder = 'foo' assert sokoban_plus.boxorder == 'foo' assert sokoban_plus.is_enabled == False assert sokoban_plus.is_valid == False sokoban_plus = SokobanPlus(5, "1 2 0 3 0 ", "3 1 0 2 0 0 0") sokoban_plus.is_enabled = True assert sokoban_plus.is_valid == True assert sokoban_plus.is_enabled == True sokoban_plus.goalorder = 'foo' assert sokoban_plus.goalorder == 'foo' assert sokoban_plus.is_enabled == False assert sokoban_plus.is_valid == False
def it_raises_on_invalid_data(self): sokoban_plus = SokobanPlus(5, "ZOMG!", "YOLO") with pytest.raises(SokobanPlusDataError): sokoban_plus.is_enabled = True