Commit Graph

49 Commits

Author SHA1 Message Date
Pietro Gagliardi b722922428 Reintegrated the test's thread helper functions and the thread test functions in initmain.c. Phew. 2020-01-21 14:19:52 -05:00
Pietro Gagliardi c014fb5989 Fixed the meson configuration. 2020-01-20 20:55:37 -05:00
Pietro Gagliardi 2ccabe69f2 Started reintegrating initmain.c, sort of. I screwed up and need to redo it. 2020-01-20 20:17:44 -05:00
Pietro Gagliardi 0c66fc3995 Wrote the python script to generate the list of test cases and integrated it into meson.build. This should be fun. 2020-01-20 18:18:58 -05:00
Pietro Gagliardi c95cefaa1c Started writing the new test parent, which will run tests that do not need to spawn a child process to do UI tests with XCTest. Wow I overengineered testingpriv... Also now that I have Solaris Studio I might as well add __SUNPRO_C support. 2020-01-19 22:42:59 -05:00
Pietro Gagliardi 75db846736 Looks like we're going to need to turn the test suite into a subprocess-based suite now rather than later, because of Haiku not allowing BApplication::Run() to be called more than once. 2020-01-19 18:59:43 -05:00
Pietro Gagliardi de76afd43a And filled in haiku tests. It builds, but doesn't run. 2020-01-18 20:25:49 -05:00
Pietro Gagliardi d0edd9e738 Started a new Haiku port. 2020-01-12 22:48:28 -05:00
Pietro Gagliardi c17f854d04 And added uiControlOSVtable on Windows. We're now back to building everywhere! :D 2019-06-18 20:31:28 -04:00
Pietro Gagliardi 80ada0a06b And implemented the bare bones of uiControlOSVtable on GTK+. 2019-06-18 20:19:32 -04:00
Pietro Gagliardi a907353c9c Workaround for now. I should have specified in the bug that I overlooked it because my version of clang seems to use C99 for Objective-C by default, but not for Objective-C++. I'll do that when I'm next online. Anyway, now to write uiControl functionality tests. 2019-06-16 21:26:05 -04:00
Pietro Gagliardi 517791f04e Started writing the macOS control errors file. We have a meson problem now... it's not respecting cpp_std for Objective-C++. 2019-06-16 20:35:36 -04:00
Pietro Gagliardi 0550e4bc00 Turned testVtable into a function that returned the pointer to use, made the OSVtable equivalent likewise, and renamed darwin/control.m to darwin/controls.m. 2019-06-15 21:33:53 -04:00
Pietro Gagliardi ad209175c1 Migrated controls_errors.h. Now I need to add consts to uiRegisterControlType() and friends. 2019-06-15 20:38:18 -04:00
Pietro Gagliardi 4d78b5a3ef Migrated noinitwrongthread.c. 2019-06-15 20:17:45 -04:00
Pietro Gagliardi 8c7f1987da And fixed build errors. It works! Now to translate everything else back. 2019-06-15 20:06:12 -04:00
Pietro Gagliardi c2bace108d And finished rewriting events_errors.h. 2019-06-15 19:58:46 -04:00
Pietro Gagliardi c1ca78c46e Split the events.c errors test into its own file. 2019-06-12 11:12:08 -04:00
Pietro Gagliardi e30ed33046 Finished rewriting test/controls.c for the initial run. Now to fix errors. 2019-06-11 21:23:56 -04:00
Pietro Gagliardi 6903bebe7d Started writing the controls Darwin-specific code and all-platforms tests for real. 2019-06-10 23:09:48 -04:00
Pietro Gagliardi afbf5f2d59 And actually did split the new error testing code into its own file. Next is changing both events.c and controls.c to use it (and yes, that means we can finally start continuing work on controls.c). 2019-06-09 22:45:44 -04:00
Pietro Gagliardi c45ab57bce Started writing control tests. This is going to be fun... 2019-06-08 21:38:32 -04:00
Pietro Gagliardi f2ce4c8f56 Split the shared and static resources on the Windows tester, for the same reason. 2019-06-01 10:29:48 -04:00
Pietro Gagliardi b5927353e0 Started work to test that functions dislike being called before uiInit() or on a different thread; better to do it now than later. 2019-05-28 21:54:13 -04:00
Pietro Gagliardi 43f7d1a661 Started the events test suite. 2019-05-18 13:26:55 -04:00
Pietro Gagliardi ee3e587ddc Fixed build errors on Windows. 2019-05-04 21:47:04 -04:00
Pietro Gagliardi 00411a4d07 Moved all the test infrasturcture files into a subdirectory of test/ called lib/. 2019-05-04 16:53:54 -04:00
Pietro Gagliardi 57abc83fe3 And split all the thread stuff into their own file. Almost done with all this test library cleanup! 2019-05-04 16:47:56 -04:00
Pietro Gagliardi 5836a2a236 Ugh, macOS doesn't support timer_create() and friends :| (Even up to 10.13, it seems; not sure about 10.14!) Switch back to setitimer(). Also rename oldsig to prevSig and remove a needless (for now???) cast. 2019-05-04 14:24:22 -04:00
Pietro Gagliardi 313f5864f5 Fixed the timer functions on Windows. 2019-05-02 22:03:57 -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 5fb4e4403e And implemented testingRunWithTimeout() on Windows. All tests currently pass on all platforms! Woo! 2019-04-28 19:04:27 -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 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 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 63952a3e20 ANd integrated the test manifest back into the tester. 2019-04-21 17:59:29 -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 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 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 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
Pietro Gagliardi cdd997b6f6 Added tester build file and made sure everything works. It works! 2019-03-23 18:12:33 -04:00