Pietro Gagliardi
|
db6b6fd97b
|
Provided a mechanism for the testing library to abort on an internal error; redefined memory allocation to do so. This will also be used for resolving many of the TODOs on the Windows testing code.
|
2019-04-29 23:46:08 -04:00 |
Pietro Gagliardi
|
05af10aade
|
Added ARM64 to the CPU-specific Windows testing code.
|
2019-04-29 22:34:28 -04:00 |
Pietro Gagliardi
|
2282ee2cf8
|
Removed TODOs about overflow; we really can't handle overflow properly anyway, so eh.
|
2019-04-29 00:18:26 -04:00 |
Pietro Gagliardi
|
f948c30a3b
|
Simplified testingTimerNsec() on Windows. _div128() would make this super simple, but that's only available on VS2019, and it seems no one has implemented this in software elsewhere (the most I can find are unsigned ones...).
|
2019-04-28 23:20:01 -04:00 |
Pietro Gagliardi
|
3257710fb7
|
Fixed bad timers on GTK+ tests. Turns out that clock() doesn't count when the process isn't actively running code (for instance, if it's waiting for I/O) :|
|
2019-04-28 21:49:54 -04:00 |
Pietro Gagliardi
|
74468bb38f
|
And implemented the multithreading stuff on Unix and Darwin. We can finally continue re-adding stuff to libui!
|
2019-04-28 21:22:11 -04:00 |
Pietro Gagliardi
|
df8eadb980
|
And added the multithreaded uiQueueMain() tests.
|
2019-04-28 20:45:53 -04:00 |
Pietro Gagliardi
|
6c41fb712e
|
More notes.
|
2019-04-28 19:11:52 -04:00 |
Pietro Gagliardi
|
74ca863c1b
|
More TODOs.
|
2019-04-28 19:07:41 -04:00 |
Pietro Gagliardi
|
5fb4e4403e
|
And implemented testingRunWithTimeout() on Windows. All tests currently pass on all platforms! Woo!
|
2019-04-28 19:04:27 -04:00 |
Pietro Gagliardi
|
8ffb2b1b1e
|
Fixed build warnings and errors. Now we just need to implement testingRunWithTimeout() on Windows.
|
2019-04-28 16:35:25 -04:00 |
Pietro Gagliardi
|
49bde22f81
|
More TODOs.
|
2019-04-28 14:54:33 -04:00 |
Pietro Gagliardi
|
bdf80516c5
|
Reimplemented uiMain() and friends on GTK+.
|
2019-04-28 14:52:39 -04:00 |
Pietro Gagliardi
|
b20bf2d1c9
|
Wrote TestQueueMain_Sequence.
|
2019-04-28 14:41:30 -04:00 |
Pietro Gagliardi
|
e03021a350
|
Piped the actual file/line through to testingRunWithTimeout().
|
2019-04-28 13:26:15 -04:00 |
Pietro Gagliardi
|
64478bd5b0
|
Finished cleaning up the TimerNsec naming wonk.
|
2019-04-28 13:19:04 -04:00 |
Pietro Gagliardi
|
1bc2297597
|
Added a facility to do timeouts in test functions. Also started cleaning up the weird TimerNsec abstractions.
|
2019-04-28 13:12:40 -04:00 |
Pietro Gagliardi
|
9c70782a0f
|
Added uiMain() and friends on macOS and refined the tests. So now we'll need to add a timeout mechanism because that sendEvent: stuff really is still neeeded and I'd like to prevent shenanigans later.
|
2019-04-28 11:48:21 -04:00 |
Pietro Gagliardi
|
aa49da98ba
|
And implemented testingTimer on Windows.
|
2019-04-23 22:49:28 -04:00 |
Pietro Gagliardi
|
7e631879e7
|
Wrote the Unix clock function. It's primitive, but it works.
|
2019-04-23 12:26:52 -04:00 |
Pietro Gagliardi
|
4bd1ba2fa5
|
Oops; flipped a boolean.
|
2019-04-22 23:03:12 -04:00 |
Pietro Gagliardi
|
bd1ca240e3
|
Added timers to the testing framework, test timing (so no more of those pesky TODOs), and the OS X implementation of test timing.
|
2019-04-22 23:01:55 -04:00 |
Pietro Gagliardi
|
23591eeefa
|
Executive decision: drop uiUnint(). This was really more for double-checking *my* work, mostly with regards to memory management, and we could probably do that in the test suite instead, or even with AddressSanitizer.
|
2019-04-21 20:59:36 -04:00 |
Pietro Gagliardi
|
80ca6e2fc1
|
More notes.
|
2019-04-21 18:00:38 -04:00 |
Pietro Gagliardi
|
63952a3e20
|
ANd integrated the test manifest back into the tester.
|
2019-04-21 17:59:29 -04:00 |
Pietro Gagliardi
|
b8b3b3df39
|
Fixed the rest of the build errors and warnings. Woo! Now for the manifests.
|
2019-04-21 17:28:47 -04:00 |
Pietro Gagliardi
|
f7867f3427
|
ALMOST fixed the build on Windows with MSVC. (For the change to test/testing.h: Even in VS2019 inline isn't available in C, ugh. That function doesn't need to be inline anyway, so eh.)
|
2019-04-21 15:08:09 -04:00 |
Pietro Gagliardi
|
484989e925
|
Implemented uiInit() on macOS. The tests work so far!
|
2019-04-20 21:38:26 -04:00 |
Pietro Gagliardi
|
5e45afd0a2
|
More TODOs.
|
2019-04-19 12:13:08 -04:00 |
Pietro Gagliardi
|
6f3d45b107
|
Made it so that normal and after tests don't run if before tests failed.
|
2019-04-19 12:12:13 -04:00 |
Pietro Gagliardi
|
da36b304f8
|
Wrote the uiInit() test.
|
2019-04-19 12:10:45 -04:00 |
Pietro Gagliardi
|
e5e60284fb
|
More desirable sorting of tests: by line number per file, specifically. Also per-file, but that can remain unguaranteed if I ever spin this out into its own library.
|
2019-04-17 22:58:44 -04:00 |
Pietro Gagliardi
|
16c6425200
|
Reorganized test sets into growing arrays. We can sort them next.
|
2019-04-17 22:12:32 -04:00 |
Pietro Gagliardi
|
dcf34e6dab
|
Set up the necessary work for having the list of tests sort by filename/line number instead of init order.
|
2019-04-17 21:49:47 -04:00 |
Pietro Gagliardi
|
59b449b920
|
Added rudimentary test ordering, for the Init and Uninit tests.
|
2019-04-10 20:17:40 -04:00 |
Pietro Gagliardi
|
1b046e763b
|
Fixed the test suite.
|
2019-04-10 20:11:44 -04:00 |
Pietro Gagliardi
|
4f381d04a1
|
Added some test cases and the build script.
|
2019-04-10 14:42:17 -04:00 |
Pietro Gagliardi
|
759d6d1e46
|
Allowed deferred functions to access the testingT. If they call FailNow, we act as if nothing happens and the defers keep running.
|
2019-04-10 14:27:21 -04:00 |
Pietro Gagliardi
|
0149639edc
|
Cleaned things up a bit for libui's test suite.
|
2019-04-10 14:19:17 -04:00 |
Pietro Gagliardi
|
b26e0677af
|
Okay, I'm not satisfied with the other testing frameworks, so strip testing.h down to just what libui needs.
|
2019-04-10 13:23:25 -04:00 |
Pietro Gagliardi
|
ced0820e39
|
Undo that; this is probably overkill for libui's unit tests...
|
2019-04-10 12:55:37 -04:00 |
Pietro Gagliardi
|
5a0477d46d
|
Moved the testing files back here since we're actually going to start writing proper unit tests now.
|
2019-04-10 12:18:08 -04:00 |
Pietro Gagliardi
|
992d8694a9
|
Let's start the remodel. Move almost everything out of the way.
|
2019-04-08 20:36:21 -04:00 |
Pietro Gagliardi
|
f7907f38c6
|
Decided to just deal with the name tester instead of test for now. It's not that important to block merging.
|
2019-03-31 11:09:16 -04:00 |
Pietro Gagliardi
|
ff3d39213e
|
Decided to just build everything by default and not have separate all or examples targets since we don't really have much control over what's a top-level target anyway (and ninja on its own == ninja all). Also set layout to flat by default, since it keeps everything together, which will lead to less surprising behavior on Windows and is more useful for our release packages.
|
2019-03-31 11:04:20 -04:00 |
Pietro Gagliardi
|
81e25f76f2
|
Moved the binary PIC as a TODO and marked merge blockers as MESONTODO. Also removed a stale cmake-era TODO, because the manifest distribution idea it had will eventually be part of the uires tool.
|
2019-03-27 21:34:09 -04:00 |
Pietro Gagliardi
|
99f2b8f5ad
|
And settled test/CMakeLists.txt; nothing there that needed to be moved.
|
2019-03-27 01:07:03 -04:00 |
Pietro Gagliardi
|
1b9250e41e
|
Removed include_directories hackery, as suggested by various people in freenode #mesonbuild.
|
2019-03-25 20:07:22 -04:00 |
Pietro Gagliardi
|
467a9102ec
|
Fixed static builds on all platforms. So close to getting all this set up!
|
2019-03-24 14:11:02 -04:00 |
Pietro Gagliardi
|
2be9a4f3a3
|
Added the initial Windows meson.build. Windows Meson is having problems running, so we'll have to test this later.
|
2019-03-23 22:28:17 -04:00 |