6.5. DAO 테스트에서 연관 관계 테스팅
테스트의 시나리오는 다음과 같습니다.
멤버1 = 기선, 멤버2 = 승택님, 멤버3 = 물개 선생님
그룹1 = Agile Java Network, 그룹2 = OpenSeed
이들의 관계는 다음 그림과 같습니다.
bm205.bmp위와 같은 멤버의 그룹정보를 세팅하고 맞게 들어갔는지 각 멤버가 소속된 그룹의 갯수를 확인하여 봅시다.
테스트 코드 보기
[#M_ more.. | less.. | public void testRelation(){
KMember keesun = KMemberFixture.getAMember("기선", "keesun@email.com");
KMember paradozz = KMemberFixture.getAMember("승택님", "paradozz@email.com");
KMember seal = KMemberFixture.getAMember("선생님", "seal@email.com");
kMemberDao.add(keesun);
kMemberDao.add(paradozz);
kMemberDao.add(seal);
kMemberDao.flush();
KGroup agileJavaNetwork = KGroupFixture.getAGroup("Agile Java Network");
KGroup openSeed = KGroupFixture.getAGroup("OpenSeed");
kGroupDao.add(agileJavaNetwork);
kGroupDao.add(openSeed);
kGroupDao.flush();
KMemberGroup memberGroupOfKeesun1 = KMemberGroupFixture.getAKMemberGroup();
keesun.addMemberGroup(memberGroupOfKeesun1);
agileJavaNetwork.addMemberGroup(memberGroupOfKeesun1);
KMemberGroup memberGroupOfKeesun2 = KMemberGroupFixture.getAKMemberGroup();
keesun.addMemberGroup(memberGroupOfKeesun2);
openSeed.addMemberGroup(memberGroupOfKeesun2);
KMemberGroup memberGroupOfParadozz = KMemberGroupFixture.getAKMemberGroup();
paradozz.addMemberGroup(memberGroupOfParadozz);
openSeed.addMemberGroup(memberGroupOfParadozz);
KMemberGroup memberGroupOfSeal = KMemberGroupFixture.getAKMemberGroup();
seal.addMemberGroup(memberGroupOfSeal);
openSeed.addMemberGroup(memberGroupOfSeal);
assertEquals(2, keesun.getMemberGroups().size());
assertEquals(1, paradozz.getMemberGroups().size());
assertEquals(1, seal.getMemberGroups().size());
}
_M#]
하늘색 부분이
keesun.join(agileJavaNetwork, "운영 요원");
keesun.join(openSeed, "일반 회원");
paradozz.join(openSeed, "일반 회원");
seal.join(openSeed, "운영자");
이런 식으로 처리가 되면 좋겠다는 생각을 해봅니다.