Commit graph

5 commits

Author SHA1 Message Date
Fernando Rozenblit
721e4fefe0
Refactor Item states to be explicit instead of implicit (#919)
* extend tests

* more tests for world save

* explicit handle the special layers in wornitem

* add Location variant and relocate() methods

* refactor GottenItem and ensure Chr, not wornitems, is saved

* deflake escript watch test

* dropitem and undo refactoring

* uomod changes

* add more item tests (buy, sell, hair...)

* use location for undoing trade container properly

* rewrite loaddata to use relocate, fixing startup crashes

* do remaining location changes

* fix CI tests

* remove container pointer from item and add wearer() reference

* remove layer writes and explicit intrinsic weapon handling

* add preparing state for fresh items without serial number

* move wornitems to detached state only when it has a serial number

* load corpse items into the correct layer

* do not set a layer on load before the item is equipped

* add more tests to equipped and intrinsic items

* remove layer and substitute with the location()

* add core-changes summary

* mark items as being worn on corpse if they only moved within the corpse

* block Preparing from being reached, just to be sure

* added integrity sweep check

* Reduce direect changes to item location

* Add Item::move_into() and rewrite calling sites

* Fix container slots

* get rid of the slot_index on the item, because Location() already has it

* fix race in test leading to macos issues

* fix dangling pointer

* remove corpse can_equip_list and rely on the GottenItem rules to dress the corpse again

* let item->destroy() detach the item

* make integrity checks fail the tests

* use place_at(item, newpos) for changing item position InWorld

* add boat test for item moved out of boat that should not be visible anymore

* use place_at() in more places

* ensure CreateItemAtLocation really does

* fix Claude instructions

* remove state we didn't need

* fine tuning

* reduce test flakiness
2026-08-10 18:17:53 +00:00
Fernando Rozenblit
49230d0050
Improve webserver performance and add more tests (#891)
* Improve webserver performance and add more tests

* add more tests and use fmt library

* attempt MacOS fix for OpenConnection

* add changelog for connection fix
2026-07-05 20:38:10 +02:00
Kevin Eady
3ccf701ce9
Format testsuite scripts, pol-core support modules (#713)
* Format escript testsuite

* Manual formatting for escript testsuite
- Add format-off to places where formatter does what it should, but we don't like the results
- Manually change places where formatter outputs weird things _without_ format-off, so next format-all would show changes if not fixed

* Update .err files; add update_err.py helper script

Use the format `:line:col: message` for all .err file checks. This
allows us to change the file names without needing to edit the .err
contents.

Note that `in/inc0{1,2}.err` need have error messages between POSIX and
Windows, so their messages are a bit more "generic" than the other errs.

* Format pol testsuite

* Manual formatting for pol testsuite

* Format pol-core modules

* Manual formatting for pol-core modules

* Additional format pol-core modules

Use FormatterLineWidth=10000 since module functions must be on one line
because of the parse_modules target

* Address Discord comments

- Support multi-line module function declarations in parse_modules

* Format on df07831
2024-10-04 10:29:55 +02:00
turleypol
e7bcb662f5
Testsystem performance (#565)
* add timing information per test function/script/pkg

* bypass script scheduler logic for our testsystem with a endlessloop
due to faster execution time the wait time between doubleclicks needs to
be disabled

* try to sync lift/drop tests
2023-11-16 07:52:02 +01:00
turleypol
dee75b0a12
Scripttest inside pol (#210)
* python script to generate cpp file with BareDistro content
poltool cmd to generate the files

* updated baredistro, fixed compilation

* fix warning, ignore autogenerated file in stylechecker

* test for pol?
uoconvert got a new argument outdir for the cfg file output
single thread decay has now a upper limit of sleeptime
fixed that the exit_code can only get worse

basic files for core testing in testsuite
added a not really nice way to set it up via ctest
integrated in CI with upload of log output

* testenv

* update poltool filegeneration to c++17

* first real tests

* first npc test

* equip a backpack and test a bit aos props

* fixed early returns
2020-08-12 23:15:40 +02:00