From 2d393515c4da2ed657b3ed14b84503744e019472 Mon Sep 17 00:00:00 2001 From: monoid Date: Sat, 11 Jun 2022 17:20:41 +0900 Subject: [PATCH] gen doc for functional test --- src/testing.md | 286 +++++------------------------------------------ tools/preprop.ts | 15 +++ 2 files changed, 45 insertions(+), 256 deletions(-) diff --git a/src/testing.md b/src/testing.md index ebd882c..25586f2 100644 --- a/src/testing.md +++ b/src/testing.md @@ -74,262 +74,36 @@ setting: defered register ... ok (16ms) test result: ok. 35 passed (15 steps); 0 failed; 0 ignored; 0 measured; 0 filtered out (2s) ``` - ## 6.2 기능 테스트(Functional Test) -### Chunk +<% const keys = Array.from(it.table.keys()); %> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IDContentProcedureTest DataP/F
1Focus/Unfocus1. 청크를 클릭한다.P
2remove1. 청크를 삭제하는 버튼을 클릭한다.P
3-1render - markdown1. 마크다운 청크 렌더링을 확인한다. # 제목 P
3-2render - latex1. LaTex 청크 렌더링을 확인한다. sum^n_{n=0}n = \frac{n(n+1)}2$$ P
3-3render - link1. Image 청크 렌더링을 확인한다.http://picsum.photosP
4previews1. Katex 청크의 미리보기를 본다. sum^n_{n=0}n = \frac{n(n+1)}2$$ F
10autocomplete1. Ctrl+Space를 눌러 자동완성을 시도한다.F
11swap positions1. 청크의 위치를 바꾼다.P
27-1edit1. 청크를 수정한다.P
27-2edit chunk conflict1. 청크를 수정모드에 들어간다.F
- -### Document - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IDContentProcedureTest DataP/F
5view Chunk1. 문서를 열어 청크가 렌더링되는지 본다.test.sydP
7add/delete tag1. 문서에 태그를 추가한다.
2. 문서에 태그를 삭제한다.
AP
8Drag And Drop Upload,1. 텍스트를 드래그한다.P
- -### File - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IDContentProcedureTest DataP/F
14create/delete/rename file1. 파일을 만든다.test.txtP
15upload/download files1. 파일을 업로드한다.test.txtP
18export document1. export 버튼을 누른다.F
- -### Search - - - - - - - - - - - - - - - - - - - - -
IDContentProcedureTest DataP/F
16Document Search1. 검색버튼을 눌러 검색을 한다.chunkF
- -### Stash - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IDContentProcedureTest DataP/F
17render1. 스태시가 그려지는지 확인한다P
19add1. 청크를 추가한다P
20remove1. 청크를 삭제한다P
21Drag and Drop to Document1. 청크로부터 문서로 청크를 옮긴다.P
- -### Management - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IDContentProcedureTest DataP/F
22Login1. 비밀번호를 입력한다.adminF
24Localization1. 다른언어를 지원하는지 언어를 바꿔 확인한다F
+<% keys.forEach(c=>{ + const issues = it.table.get(c); + const ts = issues.map(x=> it.testcases.filter(y=>y.id==x.number)).flat(); + if(ts?.length == 0) return; %> +<%~`\n\n### ${c}\n\n`%> +<%~""%> +<%~""%> +<%~""%> +<%~""%> +<%~""%> +<%~""%> +<%~""%> +<%~""%> +<%~""%> +<%~""%> +<%~""%> +<% ts.forEach((y,i)=>{ + const id = y.subId ? `${y.id}-${y.subId}` : y.id;%> +<%~""%> +<%~``%> +<%~``%> +<%~``%> +<%~``%> +<%~``%> +<%~""%> +<%});%> +<%~""%> +<%~"
IDContentProcedureTest DataP/F
${id}${y.content}${y.procedure}${y.testData ?? ""}${y.pass ? "P" : "F"}
"%> +<% });%> \ No newline at end of file diff --git a/tools/preprop.ts b/tools/preprop.ts index aa4d8f4..e940b43 100644 --- a/tools/preprop.ts +++ b/tools/preprop.ts @@ -4,6 +4,20 @@ import { WriterHandler } from "https://deno.land/std@0.143.0/log/handlers.ts"; import * as Eta from "https://deno.land/x/eta@v1.12.3/mod.ts"; import { Issue } from "./githubType.ts"; +import testcaseData from "./testcases.json" assert { type: "json"}; + +type Testcase = { + id: number, + subId: number | null, + content: string, + procedure: string, + testData: string| null, + expected: string, + actual: string, + pass: boolean +} +const testcases = testcaseData as Testcase[]; + class StderrHandler extends WriterHandler { protected _writer: Deno.Writer; #encoder: TextEncoder; @@ -111,6 +125,7 @@ async function main(args: string[]) { table: table, gitHash: gitHash, toHeadId: toHeadId, + testcases: testcases }) as string; } })