From f7e62124b6507f3abc13224350049bb84a7df976 Mon Sep 17 00:00:00 2001 From: Jaro Date: Wed, 22 Mar 2023 17:20:30 +0100 Subject: [PATCH] Add script for manual testing. --- TESTING.md | 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 TESTING.md diff --git a/TESTING.md b/TESTING.md new file mode 100644 index 0000000..b1b9f70 --- /dev/null +++ b/TESTING.md @@ -0,0 +1,92 @@ +# Manual testing of Balkón + +## Script 1: Verify generated files + +Goals: + + - To verify that Balkón produces the same output in the testing environment + as it did in development. + + - To verify that ignored files for Git are set correctly. + + - To verify that the files containing expected or "golden" output of tests + are up to date. + + - To verify that tests are not being skipped. + +Prerequisites: + + - Successfully built Balkón from a clone of its Git repository. + +Steps: + + 1. Clean the Git working tree so that `git status` reports no differences. + + 2. Run automated Balkón tests using `cabal run`. + + 3. Verify that all tests passed. + + 4. Verify that `git status` reports no differences. + + 5. Verify that a file named `actual` was generated by automated tests in + the directory `.golden/shapedRuns/spannedLoremIpsum20em/`. + + - For example by running the command + `ls -l .golden/shapedRuns/spannedLoremIpsum20em/actual` + and checking the file's modification time. + + +## Script 2: Verify visual output + +Goals: + + - To identify possible visual problems in the output of Balkón, + such as incorrectly positioned or scaled glyphs. + +Prerequisites: + + - Access to files from the Git repository of Balkón. + + - Successfully built Typograffiti. + +Steps: + + + 1. Run Typograffiti with the font path, face index, pixel size, + and scale set according to the contents of the file + `.golden/shapedRuns/spannedLoremIpsum20em/fontInfo` from Balkón, + and with input set to be read from the file + `.golden/shapedRuns/spannedLoremIpsum20em/golden` from Balkón. + + 2. Verify that text is displayed in the output window. + + 3. If necessary, resize the window so that the whole paragraph can be seen. + + 4. Verify all of the following: + + a. The displayed text is legible. + + b. The displayed glyphs appear at correct sizes. + There should be a small amount of blank space around each + visible glyph so that it does not overlap with its neighbours, + but not so much that the text feels disconnected. + + c. The displayed text matches `loremIpsumParagraph` from the file + `test/Data/Text/ParagraphLayout/ParagraphData.hs` from Balkón, + character for character, except where a space was replaced + by a line break. + + d. All displayed lines are aligned to the left edge of the output, + without any indentation. + + e. All displayed lines are broken before words, + not in the middle of words and not before punctuation marks. + + f. Lines do not appear to be broken too early. + + g. The horizontal space between each pair of adjacent words + appears equal. + + h. The vertical space between the baselines of two adjacent lines + appears equal. + -- 2.30.2