Torsten Rüger
e61c5d4a55
Since some weeks, Parfait uses instance variables instead of generated attribute getters (that needed type) This makes it possible to simplify the boot process, getting rid of separate boot Space and class versions. It is still quite order dependent, but all "normal" ruby code, (less magic) so easier to understand. Also moved all code that can never run at runtime into the adapter. This included Space and Object new, space as the space will only ever be created at compile time and object, since that is quite different at run-time (which is where i am working towards) |
||
---|---|---|
.. | ||
arm | ||
bench | ||
elf | ||
lib | ||
mains | ||
mom | ||
parfait | ||
risc | ||
ruby | ||
rubyx | ||
support | ||
util | ||
vool | ||
helper.rb | ||
README.md | ||
test_all.rb |
Testing
Tdd, Bdd , Xdd, whatever you call it, i have come to the point where it is a way not only to write software, but to think about software. Ie:
- if it's not tested, we don't know it works
- test first makes me think about the software from the outside. (good perspective)
I used minitest as the framework, just because it is lighter and thus when the time comes to move to rubyx, less work.
All
'''' ruby test/test_all.rb ''''
Parfait, Risc , Arm , Mom
Follow the directory structure of the source and may be called unit tests
Risc/Interpreter
Contains many system tests that rely on everything else working. Should be hoisted i guess.
Main
Much like the Interpreter test, but for Arm. This is where the currently few executables are generated and there is an automatic way of running them remotely.
The plan is to integrate this with the interpreter directory