Description
As the number of applets, many targeting very obscure hardware, grows, the need for applet regression tests is clear. In general, applets can be classified into three categories.
For the following applets, regression tests can be done by mocking the gateware interface wrapper (e.g. SPIMasterInterface for SPI flash and AVR flash, and so on). These are the easiest to test, have tests that run the fastest because it does not require simulating gateware, and have the most impact, because this is where most applet complexity lies.
- i2c-bmp280
- i2c-eeprom-24c
- i2c-tps6598x
- jtag-arc
- jtag-mec16xx
- jtag-mips
- jtag-svf
- jtag-xc9500
- spi-flash-25c
- spi-flash-avr
For the following applets, regression testing requires simulating gateware. This is slower, more complex and more fragile due to the need for non-cycle-accurate fuzzy matching, but is essential as these applets underlie many others. However, they both typically have less functionality and the hardware is easier to obtain.
- hd44780
- i2c-master
- jtag
- jtag-pinout
- nand-flash
- program-ice40
- shugart-floppy
- spi-master
- swd
- uart
The following applets are utility applets that only use Glasgow itself. They do not require regression testing or regression testing is meaningless for them due to their nature.
- benchmark
- selftest
The following applets cannot be regression tested within the generic framework due to reasons such as very high bit rate.
- rgb_grabber