Commit Graph

15338 Commits (4e864ae2dc3f8513b74c8c16514f19bead4a2c14)
 

Author SHA1 Message Date
myk002 642d8cbe4b
handle nil values sent to printerr 2021-04-05 01:37:43 -07:00
lethosor a5128fd7e6
dwarfvet: minor logic cleanup
- Use at() to crash immediately on out-of-range errors instead of introducing
  memory corruption (see #1824)
- Replace custom implementation of df::unit::find()
- Use range-based for with get_vector() where appropriate
2021-04-05 00:38:23 -04:00
myk002 81bfdf4182
update changelog 2021-04-04 17:40:59 -07:00
myk002 13ca7f8c9e
move expect.lua from internal/ to test_util/ 2021-04-04 17:37:37 -07:00
myk002 c8abecd082
detect dfhack.printerr usage at the test level
not the expect level. this allows us to properly nest expect calls
inside of expect.printerr_match() as originally intended.
2021-04-04 17:37:36 -07:00
myk002 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
myk002 757dbeb238
update existing calls to expect.error* to new API 2021-04-04 17:37:36 -07:00
myk002 a6561911c1
error on unmatched printerr output during a test
- provides expect,printerr_match for matching printerr output
- fails tests if printerr is called outside the printerr_match wrapper
- changes api of expect.error_match to mirror the new printerr_match api
2021-04-04 17:37:33 -07:00
lethosor 9d723dc256
Switch to DFHack luacov fork
Fixes behavior of `push.recurseSubmodules`: since the commit we track is
currently only a tag (v0.15.0), pushing with `recurseSubmodules = check` fails
since that checks that submodule commits are on a branch. In our own fork, we
can add a `dfhack` branch that resolves this issue, which is consistent with
other dependencies.
2021-04-03 18:12:09 -04:00
lethosor ea1bc9e01b
Add GitHub issues/discussions to troubleshooting section 2021-04-03 00:24:58 -04:00
lethosor 8b38bf0e28
Move contribution-related information from Compile.rst to Contributing.rst 2021-04-03 00:20:15 -04:00
lethosor cb2d8e0903
Compile.rst: remove old git note and rearrange
Very unlikely that this affects anyone now
2021-04-02 23:52:32 -04:00
lethosor dfb52a2aba
Merge remote-tracking branch 'lethosor/command-prompt-fix-gui-scripts' into develop
Conflicts:
	docs/changelog.txt
2021-04-02 21:53:14 -04:00
lethosor 81905fa8fc
Merge remote-tracking branch 'lethosor/fix-buildingplan-construction-sizing' into develop 2021-04-01 22:01:50 -04:00
lethosor 257f8dbe00
buildingplan: fix size calculation for constructions
Planning a 4x2 construction with DF's `umkh` keys (i.e. not automaterial's box-select) would previously produce a 5x3 construction instead, for example.
2021-04-01 00:16:54 -04:00
lethosor 8129fdab4e
Merge remote-tracking branch 'myk002/myk_invalidate_scripts' into develop 2021-03-31 00:50:31 -04:00
Ben Lubar c06d1f8e52
tagged union support for lua (#1818) 2021-03-30 15:55:06 -05:00
lethosor 5e7653bbf5
Don't run update-submodules job in forks 2021-03-29 20:03:50 -04:00
myk002 4e844f39ae
undo formatting change in script_environment 2021-03-29 12:29:15 -07:00
myk002 d71a816b20
remove debug marker 2021-03-29 12:28:19 -07:00
myk002 54a1e8d98a
move script_environment changes to test.lua 2021-03-29 12:23:53 -07:00
myk002 e4cab1b1c6
load scripts into different namespace for testing 2021-03-29 11:26:28 -07:00
DFHack-Urist via GitHub Actions badf471434 Auto-update submodules
library/xml: master
2021-03-29 07:07:32 +00:00
myk002 8ccacd94e0
clarify clean_reqscript() function comment 2021-03-28 15:41:05 -07:00
myk002 035c9eec04
force reloading of scripts under test
and invalidate scripts once tests are complete. this ensures that the
IN_TEST flag is respected.
2021-03-28 15:40:59 -07:00
lethosor 2332009825
Merge remote-tracking branch 'myk002/myk_enable_luacov' into develop 2021-03-28 00:38:36 -04:00
lethosor 5e09fd882d
Fix Painter:viewport()
This works because Painter inherits from ViewRect. Unsure how this went unnoticed.
2021-03-27 16:55:48 -04:00
DFHack-Urist via GitHub Actions d5ba1a3d23 Auto-update submodules
library/xml: master
2021-03-27 07:11:38 +00:00
lethosor 572b6ebab5
Fix warning (#1796) 2021-03-27 00:11:50 -04:00
lethosor d61c4aa234
Merge remote-tracking branch 'myk002/myk_xlsxreader_classes' into develop 2021-03-27 00:10:03 -04:00
myk002 4d2af8438f
always read all cells to work around xlsxio bug
otherwise xlsxio will return a spurious empty row on next row read
2021-03-26 19:43:15 -07:00
lethosor ceae4723cd
Update scripts, authors (dfhack/scripts#264) 2021-03-26 00:37:28 -04:00
lethosor 26e41005e3
Fix fastdwarf warning 2021-03-25 17:20:33 -04:00
lethosor dbd35359be
Update xml 2021-03-24 22:07:37 -04:00
lethosor 2249b32ef0
Merge branch 'myk_move_main' into develop 2021-03-24 22:07:21 -04:00
lethosor 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
lethosor 29a396ba54
Merge branch 'develop' into myk_move_main 2021-03-23 22:17:36 -04:00
lethosor 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
lethosor 10a7455e85
Update scripts 2021-03-23 21:28:14 -04:00
lethosor 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
lethosor 3e67b8f00f
Merge remote-tracking branch 'myk002/myk_always_run_tests_by_default' into develop 2021-03-23 21:09:57 -04:00
myk002 a9192ebe12
update docs with new script path 2021-03-22 11:09:44 -07:00
myk002 222feff342
expand docs for open and close functions 2021-03-22 10:44:32 -07:00
myk002 4ef0ff2a24
fix formatting errors 2021-03-22 10:40:29 -07:00
myk002 e157c20fc2
use new test harness script path 2021-03-22 10:23:31 -07:00
myk002 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
myk002 3e5a2c8d7c
rerun all tests by default
introduce and use --resume option for ci
2021-03-22 10:06:03 -07:00
myk002 aac958aa50
add open() wrapper fn and document class methods 2021-03-22 09:38:20 -07:00
DFHack-Urist via GitHub Actions d5d41cd374 Auto-update submodules
library/xml: master
2021-03-22 07:20:39 +00:00
lethosor 59b023c71d
Ensure that command-prompt is dismissed after a command creates a new screen
Fixes #1803

Running a command that created a new screen would previously result in a screen
order that looked like this, due to how `Screen::Hide` works:

- DF screen
  - `command-prompt` screen (dismissed)
    - New screen

The `command-prompt` screen remained on the stack until the new screen was
dismissed, so it would intercept viewscreen vmethod calls intended for the
DF screen.

This change adds a new behavior to `Screen::Hide` that results in this screen
order after running a command:

- DF screen
  - New screen
    - `command-prompt` screen (dismissed) - DF removes this screen immediately
2021-03-21 20:42:50 -04:00