000b589e3a 
								
									
								
							
								 
							
						 
						
							
							
								
								add dwarfmode library function: enterSidebarMode()  
							
							... 
							
							
							
							refactored from quickfort. this common implementation will replace the
now redundant functions in quickfort, gui/mass-remove, and gui/blueprint 
							
						 
						
							2021-06-23 12:29:37 -07:00  
				
					
						
							
							
								 
						
							
							
								b7a970a309 
								
									
								
							
								 
							
						 
						
							
							
								
								allow mock.func() to return multiple values  
							
							
							
						 
						
							2021-06-15 13:16:05 -07:00  
				
					
						
							
							
								 
						
							
							
								1b1b4245c9 
								
									
								
							
								 
							
						 
						
							
							
								
								report output filenames when creating blueprints  
							
							... 
							
							
							
							also refactor so we can get this data from gui/blueprint 
							
						 
						
							2021-05-31 15:34:19 -07:00  
				
					
						
							
							
								 
						
							
							
								1aaed3a6ed 
								
									
								
							
								 
							
						 
						
							
							
								
								error on invalid phase names  
							
							
							
						 
						
							2021-05-21 06:34:28 -07:00  
				
					
						
							
							
								 
						
							
							
								95d97b929e 
								
									
								
							
								 
							
						 
						
							
							
								
								remove unit tests for removed function  
							
							
							
						 
						
							2021-05-15 05:59:37 -07:00  
				
					
						
							
							
								 
						
							
							
								816cd5cf27 
								
									
								
							
								 
							
						 
						
							
							
								
								add unit tests  
							
							
							
						 
						
							2021-05-10 21:11:13 -07:00  
				
					
						
							
							
								 
						
							
							
								654b3e9c56 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' into myk_negative_number_params  
							
							
							
						 
						
							2021-05-09 21:46:07 -07:00  
				
					
						
							
							
								 
						
							
							
								4968d97c22 
								
									
								
							
								 
							
						 
						
							
							
								
								test/structures/find: avoid overwriting other potential config values  
							
							
							
						 
						
							2021-05-08 22:12:07 -04:00  
				
					
						
							
							
								 
						
							
							
								59b08e99f6 
								
									
								
							
								 
							
						 
						
							
							
								
								fix -- handling and required arg detection  
							
							
							
						 
						
							2021-05-07 15:21:45 -07:00  
				
					
						
							
							
								 
						
							
							
								fd735d4b42 
								
									
								
							
								 
							
						 
						
							
							
								
								treat negative numbers as non-options in getopt  
							
							
							
						 
						
							2021-05-07 15:21:45 -07:00  
				
					
						
							
							
								 
						
							
							
								403f822520 
								
									
								
							
								 
							
						 
						
							
							
								
								Add tests for patch() where patching raises an error  
							
							
							
						 
						
							2021-04-17 00:59:56 -04:00  
				
					
						
							
							
								 
						
							
							
								ee8e10429d 
								
									
								
							
								 
							
						 
						
							
							
								
								Add initial implementation of mock.restore()  
							
							... 
							
							
							
							Like mock.patch() but only restores original values instead of also setting
new values initially. 
							
						 
						
							2021-04-16 00:34:46 -04:00  
				
					
						
							
							
								 
						
							
							
								757736728d 
								
									
								
							
								 
							
						 
						
							
							
								
								Add a mock.func() helper for mocking functions  
							
							
							
						 
						
							2021-04-10 01:22:03 -04:00  
				
					
						
							
							
								 
						
							
							
								5424392273 
								
									
								
							
								 
							
						 
						
							
							
								
								mock.patch(): propagate return values  
							
							
							
						 
						
							2021-04-09 00:41:39 -04:00  
				
					
						
							
							
								 
						
							
							
								f25b8a0d14 
								
									
								
							
								 
							
						 
						
							
							
								
								Fix patching value with nil  
							
							
							
						 
						
							2021-04-09 00:35:54 -04:00  
				
					
						
							
							
								 
						
							
							
								7b2f01d45b 
								
									
								
							
								 
							
						 
						
							
							
								
								Add initial mock.patch() implementation for tests  
							
							
							
						 
						
							2021-04-09 00:32:10 -04:00  
				
					
						
							
							
								 
						
							
							
								642d8cbe4b 
								
									
								
							
								 
							
						 
						
							
							
								
								handle nil values sent to printerr  
							
							
							
						 
						
							2021-04-05 01:37:43 -07:00  
				
					
						
							
							
								 
						
							
							
								13ca7f8c9e 
								
									
								
							
								 
							
						 
						
							
							
								
								move expect.lua from internal/ to test_util/  
							
							
							
						 
						
							2021-04-04 17:37:37 -07:00  
				
					
						
							
							
								 
						
							
							
								5af1b627cb 
								
									
								
							
								 
							
						 
						
							
							
								
								add tests, move expect.lua  
							
							... 
							
							
							
							I moved expect.lua from library/lua/test/ to library/lua/internal since
luacov is configured to ignore any file with /test/ in its path 
							
						 
						
							2021-04-04 17:37:36 -07:00  
				
					
						
							
							
								 
						
							
							
								757dbeb238 
								
									
								
							
								 
							
						 
						
							
							
								
								update existing calls to expect.error* to new API  
							
							
							
						 
						
							2021-04-04 17:37:36 -07:00  
				
					
						
							
							
								 
						
							
							
								c06d1f8e52 
								
									
								
							
								 
							
						 
						
							
							
								
								tagged union support for lua ( #1818 )  
							
							
							
						 
						
							2021-03-30 15:55:06 -05:00  
				
					
						
							
							
								 
						
							
							
								62776f5568 
								
									
								
							
								 
							
						 
						
							
							
								
								Move `expect` functions to a separate file  
							
							... 
							
							
							
							This allows tests to test these functions without needing to include the test
wrapper directly (now ci/test.lua, formerly test/main.lua). Hopefully this
location is also more stable, similar to other libraries that are already tested. 
							
						 
						
							2021-03-24 00:48:52 -04:00  
				
					
						
							
							
								 
						
							
							
								29a396ba54 
								
									
								
							
								 
							
						 
						
							
							
								
								Merge branch 'develop' into myk_move_main  
							
							
							
						 
						
							2021-03-23 22:17:36 -04:00  
				
					
						
							
							
								 
						
							
							
								9a29e5f1ce 
								
									
								
							
								 
							
						 
						
							
							
								
								Make "test file failed to load" errors more obvious, and make run-tests.py fail  
							
							... 
							
							
							
							These errors could previously go undetected, since they were easy to miss at the
end of the output and did not cause run-tests.py to fail.
This change adds a `*` pseudo-entry to test_status.json, which is set to
"failed" if any tests failed *or* failed to load. This avoids the need to change
run-tests.py, which is cached on Buildmaster.
See #1815  
							
						 
						
							2021-03-23 22:11:48 -04:00  
				
					
						
							
							
								 
						
							
							
								e9efa6c961 
								
									
								
							
								 
							
						 
						
							
							
								
								Update xml, fix + improve robustness of unions.lua unit tests  
							
							... 
							
							
							
							- unit_action_fields(): handled primitive union members correctly
- unit_action_type(): added messages to make failures easier to diagnose
    - Also removed redundant checks that effectively checked that
      `enum.attrs[k] == enum.attrs[v]` - this is out of scope of union tests 
							
						 
						
							2021-03-23 21:24:57 -04:00  
				
					
						
							
							
								 
						
							
							
								5f00183177 
								
									
								
							
								 
							
						 
						
							
							
								
								move test harness out of test dir  
							
							... 
							
							
							
							and install to test.lua in top-level scripts directory instead of test/main.lua 
							
						 
						
							2021-03-22 10:15:32 -07:00  
				
					
						
							
							
								 
						
							
							
								3e5a2c8d7c 
								
									
								
							
								 
							
						 
						
							
							
								
								rerun all tests by default  
							
							... 
							
							
							
							introduce and use --resume option for ci 
							
						 
						
							2021-03-22 10:06:03 -07:00  
				
					
						
							
							
								 
						
							
							
								120a359d6f 
								
									
								
							
								 
							
						 
						
							
							
								
								Fix typo  
							
							
							
						 
						
							2021-03-20 13:29:30 -04:00  
				
					
						
							
							
								 
						
							
							
								403ba2b8ea 
								
									
								
							
								 
							
						 
						
							
							
								
								work when there is no done_command  
							
							
							
						 
						
							2021-03-07 12:06:48 -08:00  
				
					
						
							
							
								 
						
							
							
								98b67e170d 
								
									
								
							
								 
							
						 
						
							
							
								
								allow done_command to be set in test_config.json  
							
							
							
						 
						
							2021-03-07 08:51:02 -08:00  
				
					
						
							
							
								 
						
							
							
								dc5fe71caf 
								
									
								
							
								 
							
						 
						
							
							
								
								add more help and improve compatibility  
							
							... 
							
							
							
							- explain modes, done command, and test_config.json file format
- also be more flexible with how the done command is formatted (can now be
  passed as either separate tokens or as a single quoted string)
- print the filter values when filtering tests 
							
						 
						
							2021-03-07 08:24:18 -08:00  
				
					
						
							
							
								 
						
							
							
								3ff3457c10 
								
									
								
							
								 
							
						 
						
							
							
								
								include main test file as a module for testing  
							
							... 
							
							
							
							rewrite main.lua so it can be included as a module
rename test.lua to test_test.lua since I plan to rename main.lua to
test.lua in a future PR 
							
						 
						
							2021-03-07 08:24:18 -08:00  
				
					
						
							
							
								 
						
							
							
								4779dd678d 
								
									
								
							
								 
							
						 
						
							
							
								
								fix test_dir param and allow userdata in table_eq  
							
							
							
						 
						
							2021-03-07 08:24:18 -08:00  
				
					
						
							
							
								 
						
							
							
								6a95308123 
								
									
								
							
								 
							
						 
						
							
							
								
								support setting test_dir on the commandline  
							
							
							
						 
						
							2021-03-07 08:24:18 -08:00  
				
					
						
							
							
								 
						
							
							
								f176310bcd 
								
									
								
							
								 
							
						 
						
							
							
								
								make table_eq check recursive equality  
							
							... 
							
							
							
							and add tests. to write test the table_eq function itself, I expose it
in the text env via expect_raw. if we don't want to do this,
alternatives could be:
1. add the test to main.lua itself
2. expose the expect.table_eq function via a test_hooks variable. then
   test.lua could require main.lua and access the function via the hook.
   may need to update main.lua a bit to ensure it does not run when it
   is "require"d 
							
						 
						
							2021-03-07 08:24:17 -08:00  
				
					
						
							
							
								 
						
							
							
								b302289864 
								
									
								
							
								 
							
						 
						
							
							
								
								prep test/main.lua for running live unit tests  
							
							... 
							
							
							
							- make test config controllable via commandline params
- enable filtering by mode
- fix test filter code (it would misbehave if multiple filters were
  specified)
- allow done_command to have multiple tokens (before it could only be
  one word)
- remove preemptive check for the title screen. it is still checked when a
  test actually requires that the game is on the title screen 
							
						 
						
							2021-03-07 08:24:17 -08:00  
				
					
						
							
							
								 
						
							
							
								371314d9c3 
								
									
								
							
								 
							
						 
						
							
							
								
								Update scripts, tweak test  
							
							
							
						 
						
							2020-12-16 13:16:13 -05:00  
				
					
						
							
							
								 
						
							
							
								d437cfe649 
								
									
								
							
								 
							
						 
						
							
							
								
								Add test for invalid job types in workflow's job_outputs  
							
							
							
						 
						
							2020-12-15 21:36:57 -05:00  
				
					
						
							
							
								 
						
							
							
								bd92d8f27a 
								
									
								
							
								 
							
						 
						
							
							
								
								Make require() reload modules when run in tests  
							
							
							
						 
						
							2020-12-15 21:27:21 -05:00  
				
					
						
							
							
								 
						
							
							
								d3aeca495f 
								
									
								
							
								 
							
						 
						
							
							
								
								Set dfhack.internal.IN_TEST flag when running tests  
							
							
							
						 
						
							2020-12-15 21:27:19 -05:00  
				
					
						
							
							
								 
						
							
							
								b55d844164 
								
									
								
							
								 
							
						 
						
							
							
								
								Add test for get_initial_cwd()  
							
							
							
						 
						
							2020-11-12 21:03:05 -05:00  
				
					
						
							
							
								 
						
							
							
								9c8098b4f0 
								
									
								
							
								 
							
						 
						
							
							
								
								Expose to_search_normalized to Lua, add test, and use in ListColumn (most useful for the `stocks` plugin)  
							
							
							
						 
						
							2020-10-10 01:40:00 -04:00  
				
					
						
							
							
								 
						
							
							
								f0ad730a37 
								
									
								
							
								 
							
						 
						
							
							
								
								Lua: Fix off-by-one preventing accessing last df-other-vectors item by ID, add tests  
							
							
							
						 
						
							2020-07-26 02:11:27 -04:00  
				
					
						
							
							
								 
						
							
							
								4891b4fd5e 
								
									
								
							
								 
							
						 
						
							
							
								
								Fix indexing primitive refs with integers (broken in  #1543 ), add tests  
							
							... 
							
							
							
							Apparently lua_tostring has the side effect of *converting* numbers to strings 
							
						 
						
							2020-07-25 20:22:52 -04:00  
				
					
						
							
							
								 
						
							
							
								56e43a0dde 
								
									
								
							
								 
							
						 
						
							
							
								
								Linux: make Process::getPath (and dfhack.getDFPath()) not depend on cwd, for consistency with other platforms  
							
							
							
						 
						
							2020-07-16 23:21:56 -04:00  
				
					
						
							
							
								 
						
							
							
								1f1bb5a055 
								
							
								 
							
						 
						
							
							
								
								Update Lua API docs for ref_target field, add tests  
							
							
							
						 
						
							2020-07-14 02:57:30 -04:00  
				
					
						
							
							
								 
						
							
							
								498eb2750b 
								
							
								 
							
						 
						
							
							
								
								+Tests  
							
							
							
						 
						
							2020-04-06 19:28:34 -04:00  
				
					
						
							
							
								 
						
							
							
								d664681ea8 
								
							
								 
							
						 
						
							
							
								
								Add a basic test for df.image_set.find()  
							
							
							
						 
						
							2020-04-05 23:30:24 -04:00  
				
					
						
							
							
								 
						
							
							
								5fdef49560 
								
							
								 
							
						 
						
							
							
								
								Add support for navigating to title screen for specific tests that require it  
							
							
							
						 
						
							2020-04-05 23:12:31 -04:00  
				
					
						
							
							
								 
						
							
							
								954764d5f1 
								
							
								 
							
						 
						
							
							
								
								Add tests for utils.invert  
							
							
							
						 
						
							2020-04-05 23:04:10 -04:00  
				
					
						
							
							
								 
						
							
							
								5598b332f2 
								
							
								 
							
						 
						
							
							
								
								Reorganize structures tests and add basic unit_action-related tests  
							
							
							
						 
						
							2020-04-01 02:30:55 -04:00  
				
					
						
							
							
								 
						
							
							
								ba72497963 
								
							
								 
							
						 
						
							
							
								
								Add some rudimentary test selection support  
							
							
							
						 
						
							2020-04-01 02:15:27 -04:00  
				
					
						
							
							
								 
						
							
							
								91fad90167 
								
							
								 
							
						 
						
							
							
								
								Make test base folder customizable, clean up, stop always installing test folder  
							
							
							
						 
						
							2020-04-01 00:26:51 -04:00  
				
					
						
							
							
								 
						
							
							
								4fde096009 
								
							
								 
							
						 
						
							
							
								
								Add expect.* functions for other binary comparisons  
							
							
							
						 
						
							2020-03-27 02:01:03 -04:00  
				
					
						
							
							
								 
						
							
							
								bb02c9f639 
								
							
								 
							
						 
						
							
							
								
								Add a couple basic gui tests  
							
							
							
						 
						
							2020-03-27 01:38:40 -04:00  
				
					
						
							
							
								 
						
							
							
								e6c9db0a18 
								
							
								 
							
						 
						
							
							
								
								Clean up test skipping logic  
							
							
							
						 
						
							2020-03-27 00:49:34 -04:00  
				
					
						
							
							
								 
						
							
							
								a312336f86 
								
							
								 
							
						 
						
							
							
								
								Add (placeholder) support for specifying which game mode tests should run in  
							
							
							
						 
						
							2020-03-27 00:34:44 -04:00  
				
					
						
							
							
								 
						
							
							
								c6d2407f2c 
								
							
								 
							
						 
						
							
							
								
								Ensure that Lua test runner always exits  
							
							
							
						 
						
							2020-03-26 23:33:39 -04:00  
				
					
						
							
							
								 
						
							
							
								2e352408c2 
								
							
								 
							
						 
						
							
							
								
								Split up test runner funcs  
							
							
							
						 
						
							2020-03-26 23:26:43 -04:00  
				
					
						
							
							
								 
						
							
							
								ea3be02c63 
								
							
								 
							
						 
						
							
							
								
								Overhaul lua testing script  
							
							... 
							
							
							
							- Now keeps track of the state of each test individually
- Only runs uncompleted tests if DF crashes/restarts
- DF now exits with 0
- Easier to run locally
- Hopefully works on Travis too! 
							
						 
						
							2020-03-25 01:45:17 -04:00  
				
					
						
							
							
								 
						
							
							
								f9c50a1f0e 
								
							
								 
							
						 
						
							
							
								
								Add test to make sure viewscreen destructors work  
							
							
							
						 
						
							2020-03-23 00:49:08 -04:00  
				
					
						
							
							
								 
						
							
							
								37e7bed779 
								
									
								
							
								 
							
						 
						
							
							
								
								add df.global:_field method. add test case to check for overlapping globals.  
							
							
							
						 
						
							2020-03-20 09:41:58 -05:00  
				
					
						
							
							
								 
						
							
							
								163c9b4059 
								
							
								 
							
						 
						
							
							
								
								Add utils.OrderedTable, make test order consistent  
							
							... 
							
							
							
							Also added OrderedTable tests and comment support to expect.*() 
							
						 
						
							2018-07-19 12:40:25 -04:00  
				
					
						
							
							
								 
						
							
							
								5d3126403b 
								
							
								 
							
						 
						
							
							
								
								Switch back to coroutines for tests  
							
							
							
						 
						
							2018-07-19 11:26:38 -04:00  
				
					
						
							
							
								 
						
							
							
								063602349c 
								
							
								 
							
						 
						
							
							
								
								Add a basic test library and a couple GUI module tests (squashed)  
							
							... 
							
							
							
							Also modified Core/Console a bit to get this to actually produce output on
Travis (DFHACK_DISABLE_CONSOLE now allows console output, just not input)
Squashed merge from lethosor/tests 
							
						 
						
							2018-07-18 14:29:13 -04:00  
				
					
						
							
							
								 
						
							
							
								2af5f7ab87 
								
							
								 
							
						 
						
							
							
								
								Add test runner  
							
							
							
						 
						
							2018-02-04 16:00:53 -05:00