Thomas Jensen
4246ad1203
Update copyright statements for 2024
2024-02-16 22:01:58 +01:00
Thomas Jensen
5456fc2367
Adapt Windows-specific code to recent changes
...
This included renaming the `WORD` token in our lexer to `BXWORD`,
in order to avoid a conflict with a symbol in windows.h.
2024-02-15 22:00:41 +01:00
Thomas Jensen
d857b59dbe
Fix unit test test_inputfiles_actual_success() in 'cmdline_test' module
...
to create dummy output in out/ directory.
2023-12-30 20:21:45 +01:00
Thomas Jensen
e6343dda0e
Address shellcheck findings in utest/report.sh
2023-12-24 14:12:50 +01:00
Thomas Jensen
f739343c29
Move some declarations from shape.h to boxes.in.h
...
This resolves some otherwise circular dependencies between modules.
2023-12-09 14:54:13 +01:00
Thomas Jensen
863c7c1f7b
Test and fix more comparison types in box removal
2023-12-02 22:26:36 +01:00
Thomas Jensen
393f27256e
Remove obsolete parameter 'skip' from u32_strnrstr() in 'unicode' module
2023-12-02 22:26:35 +01:00
Thomas Jensen
6de060ceb6
Finalize rewritten 'remove' module
2023-12-02 22:26:34 +01:00
Thomas Jensen
775cabfbf6
Add bxs_substr() and bxs_prepend_spaces() to 'bxstring' module
2023-12-02 22:26:34 +01:00
Thomas Jensen
eca7287f0c
Extract match_horiz_line() function in 'remove' module
2023-12-02 22:26:34 +01:00
Thomas Jensen
cde5ecc26a
Extract match_outer_shape() function in 'remove' module
2023-12-02 22:26:31 +01:00
Thomas Jensen
c4982a15df
Add bxs_last_char_ptr()
in bxstring module
2023-12-02 22:25:18 +01:00
Thomas Jensen
9511d18bc1
Add bxs_ltrim() to bxstring module
2023-12-02 22:25:17 +01:00
Thomas Jensen
aef8c56eed
Add u32_insert_space_at() to 'unicode' module
2023-12-02 22:25:17 +01:00
Thomas Jensen
a759026790
Switch input
structure entirely to bxstring
2023-12-02 22:25:12 +01:00
Thomas Jensen
15c72d4d99
Restore branch coverage for tests on Linux
2023-12-02 14:36:19 +01:00
Thomas Jensen
b91dfd5dff
Fix some problems with LEX and YACC defaults on Linux
...
Remove flags_darwin, which are the same as flags_unix now
2023-12-02 13:51:55 +01:00
David Sargeant
80880a3ad7
Removed linker --wrap
option so unit tests run on macOS
2023-12-02 13:51:55 +01:00
David Sargeant
d2c44c04e0
Update function name to be wrapped in unit testing Makefile
2023-12-02 13:51:55 +01:00
David Sargeant
5f0db01418
Update Makefile, src/Makefile, and utest/Makefile to support MacOS unit tests
2023-12-02 13:51:55 +01:00
David Sargeant
503a81cf9a
setup_mocks()
should set function pointer bx_fprintf
to point to __wrap_bx_fprintf()
2023-12-02 13:51:55 +01:00
Matthew Thompson
5e9c69ccec
move to branch_coverage to avoid warning
2023-12-02 13:51:55 +01:00
Thomas Jensen
6cea61c327
Add bxstring support to 'generate' module
2023-05-19 22:12:51 +02:00
Thomas Jensen
cd2ccdaed3
Add bxs_filter_visible() and react to color options in bxs_to_output() in 'bxstring' module
2023-05-09 21:09:00 +02:00
Thomas Jensen
241459e5b4
Add ncurses library to check terminal's color support
2023-05-08 21:12:00 +02:00
Thomas Jensen
08feb7eb2c
Add long options capability to command line
2023-05-06 22:43:11 +02:00
Thomas Jensen
4cce7ae461
Add bxs_is_visible_char() to 'bxstring' module
2023-05-04 21:30:47 +02:00
Thomas Jensen
d80ed48102
Fix declared header dependencies in Makefiles
2023-05-01 21:41:02 +02:00
Thomas Jensen
c41997870e
Add test case and fix for string with broken escape sequences
2023-05-01 14:18:33 +02:00
Thomas Jensen
21a691fbd1
Use UTF-8 data read from config file #72
...
- shapes get additional MBCS values
- metadata is already converted for real to use bxstr_t*
2023-04-19 21:06:00 +02:00
Thomas Jensen
4ff37eb5ba
Extend bxstring functionality
2023-03-31 21:00:00 +02:00
Thomas Jensen
5026357fc2
Add more tests for bxstring creating functions
2023-03-28 21:27:06 +02:00
Thomas Jensen
b0d3384bd4
Add new "bxstring" module which is meant to evolve into boxes' string abstraction
...
It handles embedded escape sequences, mbcs encodings, and characters wider than 1 column.
2023-03-26 21:34:44 +02:00
Thomas Jensen
77d02890a7
Update copyright statements for 2023
2023-03-26 21:32:08 +02:00
Thomas Jensen
a3a37b50fc
Upgrade project license to GPL-3 #101
2022-09-18 15:00:15 +02:00
Thomas Jensen
11da751439
Add more unit tests for command line option parsing
2021-11-05 22:02:55 +01:00
Thomas Jensen
7b828461ed
Add unit tests for different input and output file situations
2021-11-05 21:48:50 +01:00
Thomas Jensen
413b174d6c
Add unit tests for alignment option parsing (-a)
2021-11-05 21:10:11 +01:00
Thomas Jensen
fbc4678faa
Add some unit tests for tab option parsing (-t)
2021-11-05 14:28:13 +01:00
Thomas Jensen
f13207318a
Add some unit tests for -p option parsing
2021-11-05 14:07:58 +01:00
Thomas Jensen
84d051f1e5
Add unit tests for '-k' option parsing
2021-11-04 21:53:35 +01:00
Thomas Jensen
0e2b57c97d
Add unit tests for indentation mode cmdline parsing
2021-11-04 14:12:40 +01:00
Thomas Jensen
b07af10931
Add three more unit tests for regex_replace()
2021-11-01 21:46:43 +01:00
Thomas Jensen
ab28ad8c3a
Add workaround for mockable fprintf on MinGW
2021-11-01 14:23:19 +01:00
Thomas Jensen
4ae947ff99
Extend unit testing capabilities
...
- Structure unit tests into multiple modules
- Add setup/teardown of fixtures
- Add ability to capture and check stdout and stderr
- Add mock handling to Makefile
2021-10-28 09:01:14 +02:00
Thomas Jensen
729c4e0692
Add two more unit tests on tools.c
2021-10-21 20:49:49 +02:00
Thomas Jensen
a5dae11c4c
Add the first cmocka-based unit tests
2021-10-21 20:23:52 +02:00