076f1f7f29
Add more tests around time travel
2022-04-09 21:10:44 -07:00
105c372779
Add ToString overrides for orders
2022-04-07 15:58:17 -07:00
5e74ffc19f
Apply null-forgiving operator where relevant
2022-04-07 15:48:46 -07:00
d491ea9f64
Fix missing temporal dimension to dislodge checks
2022-03-30 13:00:51 -07:00
9f5ecaa16a
Add province shortcuts to decrease verbosity
2022-03-30 12:52:57 -07:00
b679558d9c
Make adjudicator reusable to decrease verbosity
2022-03-30 08:04:44 -07:00
604dda95e8
Enable fluent definitions of multiple turns
2022-03-29 21:01:58 -07:00
b347cc88aa
Make TestCaseBuilder reusable
2022-03-29 20:59:30 -07:00
6948db29df
Save previous orders so time travel can re-adjudicate them
2022-03-29 20:40:19 -07:00
6a6810ef07
Add basic movement phase update tests
2022-03-29 17:16:00 -07:00
d4e68844c6
Simplify world updates and expose root season
2022-03-28 22:34:57 -07:00
aa9c9c548b
Enable hold strength across parallel worlds
2022-03-28 17:41:38 -07:00
ff64b459ca
Reduce verbosity of test case assertions
2022-03-28 15:05:04 -07:00
609e8cc60c
Add dislodge checks to DATC A tests
2022-03-28 09:39:03 -07:00
b026adbfbc
Add some basic unit tests for the movement adjudicator
2022-03-27 15:10:34 -07:00
6b1b9dce10
Refactor adjudication into separate adjudication and update steps
...
This makes it easier to unit test adjudication decisions directly.
2022-03-27 14:39:00 -07:00
36ea621782
Move decision classes out of the movement adjudicator
2022-03-24 09:22:13 -07:00
d2ec79647a
Add movement phase order adjudication
...
This implementation does not handle convoys nor account for circular movement and convoy paradoxes.
2022-03-24 08:18:33 -07:00
1ea4ac0ded
Remove obsolete test fixture
2022-03-24 07:29:50 -07:00
d6d9102f05
Add model for retreating unit information
2022-03-24 07:25:51 -07:00
a162e6c7ef
Finish filling out the standard map
2022-03-23 11:17:02 -07:00
697614e34f
Add DATC 6.A.* test cases
...
For now, just the parts that can be decided with validation are run. The tests and parts of tests requiring movement adjudication will be implemented fully when movement adjudication is implemented.
2022-03-22 23:21:09 -07:00
8c828661e2
Add validation constraint
2022-03-22 22:11:14 -07:00
c50dbf6b46
Add movement order validation tests
2022-03-22 21:30:20 -07:00
00cac2cb89
Add order references to test case builder
...
This allows assertions to be made more easily against orders in a test case.
2022-03-22 20:15:50 -07:00
be3f6a527f
Refactor Support*Order to inherit from abstract SupportOrder
2022-03-22 12:57:01 -07:00
70b004edab
Define ToString methods on the main models
2022-03-15 17:36:47 -07:00
9e1782c401
Create fluent interface for building test cases
2022-03-15 17:24:16 -07:00
b0a8100641
Refactor World to avoid double enumeration
...
If an enumerable that created objects were passed, it would duplicate the objects when re-enumerated, which breaks all the reference equality logic.
2022-03-15 15:43:37 -07:00
18c5435c96
Refactor map definitions into World
2022-03-15 14:52:08 -07:00
8a7e90b949
Add movement phase order validation logic
2022-03-15 12:24:29 -07:00
3ad0dbc086
Add order types
2022-03-10 17:34:13 -08:00
c4f5145320
Add order model and adjudicator framework
2022-02-18 17:17:17 -08:00
031d1b60bd
Add unit model and unit tests
2022-02-18 12:13:23 -08:00
b284f1acc6
Add season model and timeline unit test
2022-02-18 11:35:05 -08:00
ec85ce8729
Create models for the province map and add test project
...
The full standard map is big and I'll fill the rest in later.
2022-02-18 10:53:33 -08:00
62da5e780e
Add nix develop terminal profile
2022-02-12 15:05:12 -08:00
4ad35f4133
Initialize dotnet project
2022-02-12 15:05:12 -08:00
fee929df47
Disable dotnet telemetry in dev shell
2022-02-12 15:05:12 -08:00
c0c9ab15d1
Add dev shell configs
2022-02-12 10:30:56 -08:00
60c25e1ae5
Initial commit
2022-02-11 23:29:29 -08:00