rubyx/test
Torsten 0ce14bdfd1 moving to SA register names (wip)
starting to implement register allocation by first creating SA
Single Assignment means a register is only every assigned a value once. Hence for any operation involving another register, a new register is created.
We do this with a naming scheme for the registers in dot notation (as it would be in c) which means 2 registers with the same name, should have the same contents. This does not apply to temporaries, but that is another day.
Starting WIP now, and will create many red commits before merging when green.
2020-03-22 14:31:43 +02:00
..
arm Add number of registers to platform 2020-02-26 19:01:01 +02:00
bench block version of loop 2019-08-24 17:00:59 +03:00
elf Fix bad test coverage 2019-09-25 01:14:00 +03:00
lib use modified opal logger 2018-05-20 14:45:48 +03:00
mains use env, not class var aas compilation switch 2020-02-08 17:44:35 +07:00
parfait Rename Vool to Sol 2019-10-04 00:38:47 +03:00
risc moving to SA register names (wip) 2020-03-22 14:31:43 +02:00
ruby Rename Vool to Sol 2019-10-04 00:38:47 +03:00
rubyx Rename Vool to Sol 2019-10-04 00:38:47 +03:00
slot_machine replace fake compiler with real 2020-02-28 12:54:17 +02:00
sol fix argument transfer (to be logical) 2020-02-27 18:19:27 +02:00
support moving to SA register names (wip) 2020-03-22 14:31:43 +02:00
util Also make risc compilers a linked lists 2019-09-28 15:08:08 +03:00
helper.rb fix resolve issue 2019-09-29 22:37:28 +03:00
README.md Change Mom to SlotMachine 2019-10-03 20:55:41 +03:00
test_all.rb always use fail fast (in dev) 2018-08-06 13:07:06 +03:00

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 , SlotMachine

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