<aside> 💡
Register
연산 선택
Fixture Monkey Helper
<aside> 💡
타입에서도 여러 유형의 데이터 패턴이 있을 수 있는데, 현재는 하나의 패턴만 지원 가능하여 이를 개선이 필요합니다.
예를 들어, 상품이 있다고 했을 때, 일반 상품과 예약 상품은 가질 수 있는 필드가 다를 수 있습니다.
일반 상품에서 set으로 설정하는 필드와 예약 상품에서 set하는 필드가 다를 수 있는데, 현재 register 구조에서는 지원할 수 없습니다.
</aside>
HashMap
을 이용해 연산 집합을 관리했습니다. (key
: name, value
: register한 연산)selectName
API를 통해 Map의 key를 통해 임의의 연산 집합을 선택해서 적용했습니다.https://github.com/naver/fixture-monkey/pull/1036
<aside> 💡
제가 생각하는 방향은 registeredArbitraryBuilders
와 namedArbitraryBuilder
를 두 개로 관리하지 않고 하나의 변수로 관리하는 방향입니다.
구체적으로 말씀드리면, MatcherOperator
를 확장해서 위의 두 관심사 (property로 식별, name+property로 식별)을 모두 처리하는 방향입니다. 용준님도 이 방향이 괜찮을지 의견 주시면 좋을 것 같습니다.
</aside>
<aside> 💡
name
을 키로 등록하는 register
할 수 있게 구현 → 하나의 시나리오를 여러 번 테스트 하려면 매번 객체를 생성할 때마다 register
연산을 정의해야 한다.
→ 클래스로 정의를 해서 간편하게 사용을 할 수 있도록 구현
</aside>
name
과 register
연산을 키-값 형식으로 저장하는 클래스를 생성.
registeredNameGroup
API에 전달인자로 Group
을 전달하면 Group
내에 있는 register
연산을 선택해서 사용할 수 있도록 구현 해야 한다.