테스트 코드 리팩토링

<dependency>
    <groupId>pl.pragmatists</groupId>
    <artifactId>JUnitParams</artifactId>
    <version>1.1.1</version>
    <scope>test</scope>
</dependency>
@RunWith(JUnitParamsRunner.class)
public class EventTest {
	@Test
	@Parameters({
			"0, 0, true",
			"0, 100, false",
			"100, 0, false"
	})
	public void testFree(int basePrice, int maxPrice, boolean isFree) {
		// Given
		Event event = Event.builder()
				.basePrice(basePrice)
				.maxPrice(maxPrice)
				.build();

		// When
		event.update();

		// Then
		assertThat(event.isFree()).isEqualTo(isFree);
	}
}
@Test
@Parameters(method = "paramsForTestFree")
public void testFree(int basePrice, int maxPrice, boolean isFree) {
	// Given
	Event event = Event.builder()
			.basePrice(basePrice)
			.maxPrice(maxPrice)
			.build();

	// When
	event.update();

	// Then
	assertThat(event.isFree()).isEqualTo(isFree);
}

private Object[] paramsForTestFree() {
	return new Object[] {
			new Object[] {0, 0, true},
			new Object[] {100, 0, false},
			new Object[] {0, 100, false},
			new Object[] {100, 200, false},
	};
}
@Test
@Parameters
public void testFree(int basePrice, int maxPrice, boolean isFree) {
	// Given
	Event event = Event.builder()
			.basePrice(basePrice)
			.maxPrice(maxPrice)
			.build();

	// When
	event.update();

	// Then
	assertThat(event.isFree()).isEqualTo(isFree);
}

private Object[] parametersForTestFree() {
	return new Object[] {
			new Object[] {0, 0, true},
			new Object[] {100, 0, false},
			new Object[] {0, 100, false},
			new Object[] {100, 200, false},
	};
}