rubyx/test
2018-04-08 00:50:51 +03:00
..
arm remove extra instruction and use next instead 2018-04-03 14:46:07 +03:00
bench rename register to risc 2017-01-19 09:02:29 +02:00
elf get an elf written 2018-03-29 20:37:25 +03:00
fragments moving vool_method to parfait 2017-12-10 20:47:26 +02:00
lib remove all test_all 2017-04-13 17:00:56 +03:00
mom fixes all but interpreter tests 2018-04-06 23:37:41 +03:00
parfait renaming methods args and frame 2018-04-05 12:22:14 +03:00
risc add branches to builder 2018-04-08 00:50:51 +03:00
support fixing the interpreter tests 2018-04-07 18:58:44 +03:00
vool wrought one more instruction for message setup 2018-04-06 20:58:58 +03:00
helper.rb more remote debugging 2017-04-14 14:38:23 +03:00
README.md remove traces of salama 2017-08-29 18:38:51 +03:00
test_all.rb restrict tests to test dir 2017-04-14 20:37:47 +03:00

Testing

Testing is off course great, and well practised in the ruby community. Good tests exists in the parts where functionality is clear: Parsing and binary generation.

But it is difficult to write tests when you don't know what the functionality is. Also TDD does not really help as it assumes you know what you're doing.

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

Well, test Parfait. Not perfect, but growing as bugs appear. Basics are ok though.

Compiler

Different kinds of quite minimal tests that ensure we can go from parsed to code.

Fragments

Much more elaborate tests of the compling functionality. All code constructs and their output in terms of instructions are tested.

vm

Mostly tests about the Parfait compatibility layer and padding (for assmenbly). Slightly bad name ... wip