We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent d0914a6 commit ab644f3Copy full SHA for ab644f3
Makefile
@@ -145,6 +145,7 @@ compress3:
145
146
$(GTEST):
147
cmake -S googletest -B googletest/build
148
+ - $(MAKE) -C googletest/build
149
$(MAKE) -C googletest/build
150
151
-include $(addprefix .deps/,$(subst /,_,$(OBJS_BUILD:.o=.d)))
README.md
@@ -44,6 +44,7 @@ Check out the code from Git:
44
45
git clone https://github.com/bisqwit/that_terminal
46
cd that_terminal
47
+ git checkout origin/hy -b hy
48
git submodule update --init --recursive # Do not forget this step!
49
50
To compile, type `make -j4`. To run, type `./term` after compiling.
@@ -66,12 +67,12 @@ significantly.
66
67
## Documentation
68
69
* [Doxygen autogenerated documentation](https://bisqwit.github.io/that_terminal/)
70
+* [Architectural description](doc/architecture.md)
71
+* [Working time log](doc/timeusage.md)
72
* [Supported keyboard inputs](doc/inputs.md)
73
* [Supported fonts](doc/fonts.md)
74
* [Supported escape codes](doc/escapes.md)
-* [Testing](doc/testing.md)
-* [Working time log](doc/timeusage.md)
-* [Architecture](doc/architecture.md)
75
+* [Testing](doc/testing.md) ([test results](doc/test-report.txt), [coverage](https://bisqwit.github.io/that_terminal/cov/index.html))
76
77
## Instructions of use
78
doc/architecture.md
@@ -31,6 +31,32 @@ and it uses libSDL2 for rendering and for event handling.
31
32
## Application logic
33
34
+```mermaid
35
+classDiagram
36
+ class ForkPTY
37
+ class TerminalWindow
38
+ class Window
39
+ class UI
40
+ class FontPlan
41
+ ForkPTY : Open(width, height)
42
+ ForkPTY : Send(string)
43
+ ForkPTY : Recv() string
+ TerminalWindow : Write(string)
+ Window : cells
+ Window : blank
+ Window : Render(fontwidth,fontheight, pixels)
+ FontPlan : Create(fontwidth,fontheight, firstchar, numchars)
+ FontPlan : LoadGlyph(index, scanline, renderwidth) Glyph
+ Window <-- FontPlan
51
+ UI <--> ForkPTY
52
+ ForkPTY --> TerminalWindow
53
+ TerminalWindow --> Window
54
+ Window --> UI
55
+ FontsInfo --> FontPlan
56
+ ParseSimilarities --> FontPlan
57
+ GlyphList --> FontsInfo
58
+```
59
+
60
The core of the application is founded upon three classes:
61
[ForkPTY](../src/tty/forkpty.cc),
62
[TerminalWindow](../src/tty/terminal.cc)
doc/testing.md
@@ -15,6 +15,8 @@ Summary:
15
[==========] 65 tests from 16 test suites ran. (142382 ms total)
16
[ PASSED ] 65 tests.
17
18
+To redo tests, do `make test`. The output will be saved to `doc/test-report.txt`.
19
20
## Coverage testing
21
22
Coverage testing is performed using a GCOV.
@@ -26,6 +28,8 @@ Additionally, coverage-testing is performed for the unit-testing binary.
26
28
The testing results can be found here:
27
29
* [Test results](https://bisqwit.github.io/that_terminal/cov/index.html)
30
+To redo tests, do `make test`. The output will be saved to `doc/doxygen/docs/cov/`.
## Practical testing
This software is used for video making purposes by the author from time to time.
src/ctype.cc
@@ -619,13 +619,13 @@ TEST(ctype, charconv_tests)
619
}
620
TEST(ctype, count_indent)
621
{
622
- EXPECT_EQ(CountIndent(U""), 0);
623
- EXPECT_EQ(CountIndent(U"s t "), 0);
624
- EXPECT_EQ(CountIndent(U" s t "), 4);
625
- EXPECT_EQ(CountIndent(U" "), 4);
626
- EXPECT_EQ(CountIndent(U" ", 1), 3);
627
- EXPECT_EQ(CountIndent(U" s t ", 5), 4);
628
- EXPECT_EQ(CountIndent(U" s t ", 7), 2);
629
- EXPECT_EQ(CountIndent(std::u32string(150000, U' ')), 150000);
+ EXPECT_EQ(CountIndent(U""), 0u);
+ EXPECT_EQ(CountIndent(U"s t "), 0u);
+ EXPECT_EQ(CountIndent(U" s t "), 4u);
+ EXPECT_EQ(CountIndent(U" "), 4u);
+ EXPECT_EQ(CountIndent(U" ", 1), 3u);
+ EXPECT_EQ(CountIndent(U" s t ", 5), 4u);
+ EXPECT_EQ(CountIndent(U" s t ", 7), 2u);
+ EXPECT_EQ(CountIndent(std::u32string(150000, U' ')), 150000u);
630
631
#endif
src/main.cc
@@ -174,6 +174,7 @@ namespace
174
int main(int argc, char** argv)
175
176
/* Set up */
177
+ argc=argc;
178
SaveArg0(argv[0]);
179
SetTimeFactor(TimeFactor);
180
src/rendering/cset.cc
@@ -66,6 +66,6 @@ TEST(TranslateCSet, one_ok)
for(unsigned a=0; a<0x5F; ++a) EXPECT_EQ(TranslateCSet(a,1), a);
for(unsigned a=0x7F; a<512; ++a) EXPECT_EQ(TranslateCSet(a,1), a);
for(unsigned a=0x5F; a<0x7E; ++a) EXPECT_NE(TranslateCSet(a,1), a);
- EXPECT_EQ(TranslateCSet(0x61, 1), 0x2592);
+ EXPECT_EQ(TranslateCSet(0x61, 1), 0x2592u);
src/rendering/person.cc
@@ -229,6 +229,6 @@ TEST(person, pose_varies)
229
frames.insert( PersonFrame() );
230
AdvanceTime(1.0 / 32.0);
231
232
- EXPECT_EQ(frames.size(), 2);
+ EXPECT_EQ(frames.size(), 2u);
233
234
0 commit comments