bonsai-rx / machinelearning

Bonsai Library containing reactive infrastructure for machine learning
https://bonsai-rx.org/machinelearning/
MIT License
4 stars 4 forks source link

Add support for unit testing #15

Closed ncguilbeault closed 5 months ago

ncguilbeault commented 6 months ago

Summary

This PR adds support for automated unit testing. It also includes a unit test to compare outputs from Bonsai and Python running the LDS model for linear regression.

Change to solution file

The Bonsai.ML.sln file is pulled out from the src folder and into the main repo. This allows the solution file to have a structured hierarchy which encompass both src and tests, consistent with other .NET projects (e.g. ml.net).

Test workflow

The test.yml github workflow will build the solution and run tests on the solution. If the test requires running a Bonsai workflow, the individual unit test should include a Bonsai.config file for recreating the bonsai environment.

Receptive field simple cell test

The tests/Bonsai.ML.LinearDynamicalSystems.Tests/ReceptiveFieldSimpleCellTest folder contains a test method to download the data, setup a python and Bonsai environment with the necessary packages installed, generate the python and Bonsai outputs and compare.