Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Applet regression tests #74

Open
20 tasks
whitequark opened this issue Nov 21, 2018 · 0 comments
Open
20 tasks

Applet regression tests #74

whitequark opened this issue Nov 21, 2018 · 0 comments
Labels
gateware Component: gateware software Component: software

Comments

@whitequark
Copy link
Member

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
@whitequark whitequark added software Component: software gateware Component: gateware labels Nov 21, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
gateware Component: gateware software Component: software
Projects
None yet
Development

No branches or pull requests

1 participant