Joeri Exelmans
|
0aefc3aa70
Allow wildcard value for fields in semantic options, resulting in automatic generation of test cases for all possible values for those wildcard fields. Cleaner statechart / test loading code. Add 'render' script for new statechart / test XML format.
|
5 years ago |
Joeri Exelmans
|
7d1f877767
Add version 2 of test framework
|
5 years ago |
Joeri Exelmans
|
505df8ab72
Begin writing test files in new format (runtime and test framework don't support it yet).
|
5 years ago |
Joeri Exelmans
|
cd427692c0
Added Bitmap type. Added an alternative transition candidate generation implementation, starting from enabled events instead of the current state configuration. Candidate generation returns a generator instead of a list (better performance when there are lots of candidates, basically when there is no concurrency, candidate generation ends after the first valid candidate). Conflicting transitions (to which the Priority semantic aspect applies) are dealt with much more simply and efficiently by making assumptions about the order in which candidates are generated.
|
5 years ago |
Joeri Exelmans
|
217a979c0f
Compare enabled events with event triggers by their IDs instead of names.
|
5 years ago |
Joeri Exelmans
|
e7fad50fbd
Every event name in the statechart gets a unique integer ID. This avoids string comparisons and enables us to represent sets of enabled events as bitmaps.
|
5 years ago |
Joeri Exelmans
|
3459e34ea8
Change order of methods
|
5 years ago |
Joeri Exelmans
|
202a78d34a
Move some files
|
5 years ago |
Joeri Exelmans
|
a6753bd559
Fixed all tests.
|
5 years ago |
Joeri Exelmans
|
9831860870
Guard conditions are parsed as expressions, currently supporting: literals, identifiers, function calls, arrays. Initial (very minimal) data model.
|
5 years ago |
Joeri Exelmans
|
52ad9ebcbd
Fixed 'after' triggers + render them in SVG
|
5 years ago |
Joeri Exelmans
|
5f7b651a8d
Transition raised events and enter/exit actions are rendered.
|
5 years ago |
Joeri Exelmans
|
ddba3e3a80
Add test files for transition target parsing
|
5 years ago |
Joeri Exelmans
|
fc9539e6d3
The raising of an event is interpreted as an "Action" by the runtime. Big-step Maximality and Event Lifeline tests working.
|
5 years ago |
Joeri Exelmans
|
612615a2e9
Executable state tree directly generated from XML source file (no compilation step). Event raising currently disabled so most tests broken. Using "lark-parser" to parse state references.
|
5 years ago |
Joeri Exelmans
|
6f3097e1c0
Fixed test history_parallel_deep
|
5 years ago |
Joeri Exelmans
|
5f128dac0d
Rename SVG files. Add 'order of small steps' test.
|
5 years ago |
Joeri Exelmans
|
f88cf2380e
Unique state ids generated at runtime instead of compile-time. Fix rendering issues with history.
|
5 years ago |
Joeri Exelmans
|
6327a97aa9
Split 'statechart syntax' classes (basically just data classes describing the statechart model: State, Transition, ...) from 'statechart instance' (describing an instance of a statechart, with a set of current states, execution logic, etc.)
|
5 years ago |
Joeri Exelmans
|
1de3aa2076
More efficient inState implementation
|
5 years ago |
Joeri Exelmans
|
549c81a8a8
Simplified things
|
5 years ago |
Joeri Exelmans
|
3148ee5da3
Fixed errors reported by mypy type checker + parallelism (worker pool) in render script.
|
5 years ago |
Joeri Exelmans
|
41713e5375
Moved test files + update readme
|
5 years ago |
Joeri Exelmans
|
e0f804d920
Remove 'test' Makefile (no longer used)
|
5 years ago |
Joeri Exelmans
|
f600f56401
Updated 'render' script + checked in reasonably looking rendered statechart images
|
5 years ago |
Joeri Exelmans
|
2e47398f26
Better to generate SMCAT files in python than with XSLT
|
5 years ago |
Joeri Exelmans
|
f6e2e04f47
Add rendered statecharts + render script
|
5 years ago |
Joeri Exelmans
|
9134c9ddbd
Wrote XSLT transformation from SCCD to SMCAT (for rendering state machines)
|
5 years ago |
Joeri Exelmans
|
abe79bb3a7
Moved tests that are broken and wont be fixed in the short term to separate directory
|
5 years ago |
Joeri Exelmans
|
79a67cb8b4
Use python library 'dataclasses' + comprehensive small/combo/big step stdout trace with environment variable SCCDDEBUG
|
5 years ago |