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
2c57498e44
Re-added uiMain(), uiQuit(), and uiQueueMain().
2019-04-27 21:48:51 -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
408b106526
Merge branch 'master' into remodel
2019-04-23 09:10:38 -04:00
Pietro Gagliardi
ee3dbefcf6
Merge pull request #463 from lailton/master
...
Harbour version
2019-04-23 09:09:58 -04:00
Harbour Developer
73742a0210
Harbour version
2019-04-23 01:46:20 -03: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
f548f6d4d2
Readded the manifest to libui.dll. The test suite passes!
2019-04-21 17:46:50 -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
c6aa8c3324
Pruned windows/init.cpp to a minimal initialization that we can test things with, which includes adding a function to load err->Message with a formatted string.
...
Also added a better error for if InitCommonControlsEx() returns 0 without setting the last error; this usually means that v5 is loaded.
Fixes #451 .
Updates #337 .
2019-04-21 14:49:16 -04:00
Pietro Gagliardi
b89a18f3dd
Don't define DllMain() in a static build. Fixes #433 .
2019-04-21 13:58:19 -04:00
Pietro Gagliardi
29c51b6348
Started readding the Windows code; added the Windows version headers to the docs as well now since I'm cleaning up winapi.hpp as well.
2019-04-21 13:54:39 -04:00
Pietro Gagliardi
469484415d
Implemented uiInit() on Unix.
2019-04-21 12:24:19 -04:00
Pietro Gagliardi
2652772891
Wrapped the init example in a main() for maximum clarity.
2019-04-20 21:56:50 -04:00
Pietro Gagliardi
484989e925
Implemented uiInit() on macOS. The tests work so far!
2019-04-20 21:38:26 -04:00
Pietro Gagliardi
74b1e2780d
Implemented the cross-platform bits of uiInit().
2019-04-19 12:32:13 -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
668a908e76
Fleshed out init-main.md some more.
2019-04-19 00:56:52 -04:00
Pietro Gagliardi
3001e5dfaf
Merge branch 'master' into remodel
2019-04-17 23:17:22 -04:00
Pietro Gagliardi
28755bdbc0
Make the AppVeyor badge always reflect master.
...
Let's stop sending mixed signals about the build status in the CI environment; Travis and AppVeyor both used "the latest build" by default, and not "master", and apparently this confused people. See https://news.ycombinator.com/item?id=16331432 for an example.
2019-04-17 23:16:05 -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
2f58c2059e
Oops
2019-04-12 22:06:23 -04:00
Pietro Gagliardi
745f2da3b8
Forgot something
2019-04-12 22:05:21 -04:00
Pietro Gagliardi
541f9d892d
More documentation of initialization.
2019-04-12 22:02:01 -04:00
Pietro Gagliardi
4c46a25154
Started re-adding the uiInit functions, with a new method of returning errors.
2019-04-12 21:44:39 -04:00
Pietro Gagliardi
db9be102e6
Properly defined uiprivExtern in static cases.
2019-04-12 10:56:09 -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
d861de85f6
Fleshed out using-libui.md.
2019-04-09 11:23:39 -04:00
Pietro Gagliardi
7387f08ee9
Added OS-specific header guidance.
2019-04-09 10:56:21 -04:00
Pietro Gagliardi
b2cee470ca
Oops, I accidentally swapped these two files.
2019-04-09 10:47:36 -04:00
Pietro Gagliardi
de3fd3f546
Executive decision: remove menus and dialogs in the rebuild. We'll add them back later.
2019-04-09 10:46:00 -04:00
Pietro Gagliardi
d5eb06327d
And started the README on the subject.
2019-04-08 23:41:14 -04:00