Skip to content

Commit

Permalink
Issue GDSC-PKNU-Official#6 test: 테이블 구조 변경에 따라 테스트 코드 수정
Browse files Browse the repository at this point in the history
  • Loading branch information
dmswjdchl committed Sep 20, 2022
1 parent 664b3d6 commit 13675bf
Showing 1 changed file with 18 additions and 9 deletions.
27 changes: 18 additions & 9 deletions src/test/java/com/gdscpknu/gdscpknu/notion/NotionApiTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,6 @@ public void getRowByEmail() {

@Test
void getPlainTexts(){

//given
String name = "가나다";
String role = "Core";
Expand All @@ -87,22 +86,32 @@ void getPlainTexts(){

//when
/**
* KlibNotion 라이브러리에서 개별 plainText를 받아올 수 없어 정규식으로 추출하였음
* KlibNotion 라이브러리에서 name, email, role 값을 정규식으로 추출하였음
*/
String resultInString = simpleQueryResultPage.results.toString();
List<String> plainTextList = new ArrayList<>();
// 문자열 중 "(plainText=" ~ "," 범위(이름, 이메일) OR " "name=" ~ "," 범위(역할) 문자열을 추출
Pattern pattern = Pattern.compile("(?<=\\(plainText=)(.*?)(?=,)|(?<=\\(name=)(.*?)(?=,)");
Matcher matcher = pattern.matcher(resultInString);
while (matcher.find()) {
plainTextList.add(matcher.group());
Pattern namePattern = Pattern.compile("(?<=\\(plainText=)(.*?)(?=,)");
Pattern emailPattern = Pattern.compile("(?<=\\bname=이메일, value=)(.*?)(?=\\))");
Pattern rolePattern = Pattern.compile("(?<=\\bname=역할, value=SelectOptionImpl\\(name=)(.*?)(?=,)");
Matcher nameMatcher = namePattern.matcher(resultInString);
Matcher emailMatcher = emailPattern.matcher(resultInString);
Matcher roleMatcher = rolePattern.matcher(resultInString);
while (nameMatcher.find()) {
plainTextList.add(nameMatcher.group());
}
while (emailMatcher.find()) {
plainTextList.add(emailMatcher.group());
}
while (roleMatcher.find()) {
plainTextList.add(roleMatcher.group());
}

//then
assertThat(plainTextList.size()).isEqualTo(notionTable.getMemberNum() * 3);
assertThat(plainTextList.get(0)).isEqualTo(email);
assertThat(plainTextList.get(1)).isEqualTo(role);
assertThat(plainTextList.get(2)).isEqualTo(name);
assertThat(plainTextList.get(0)).isEqualTo(name);
assertThat(plainTextList.get(3)).isEqualTo(email);
assertThat(plainTextList.get(6)).isEqualTo(role);
}

}

0 comments on commit 13675bf

Please sign in to comment.