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

Implement testing patterns #33

Closed
danlangford opened this issue May 26, 2023 · 3 comments
Closed

Implement testing patterns #33

danlangford opened this issue May 26, 2023 · 3 comments

Comments

@danlangford
Copy link
Collaborator

danlangford commented May 26, 2023

My biggest fear in proposing changes is unknowingly breaking something else. It’s less of an issue for devs who have a deep understanding of the code base, but I’m not there yet.

My forte is java and I feel very comfortable over there with the build tools and unit testing. I have started a java port of the project. I have gotten pretty far but I also don’t mind learning c++.

So I have started looking into unit testing. I found a few libraries that seems popular

do you have any opinions on unit testing? Any experience with these unit testing libs? What are your thoughts?

edit: this might be a good overview for me https://www.jetbrains.com/help/clion/unit-testing-tutorial.html

@pappde
Copy link
Owner

pappde commented May 26, 2023

Certainly a good idea to have, particularly for parsing and rules. No preference, other than something easy to maintain. I suspect some of these may have a bit more overhead to integrate. For example, the project doesn't use Boost, so using Boost.Test may not be ideal.

@danlangford
Copy link
Collaborator Author

I have something working on my machine with Google Test. chosen strictly due to good IDE support (CLion, VisualStudio). I'll get a PR over sometime to show you

danlangford added a commit to danlangford/bmai that referenced this issue May 30, 2023
pappde pushed a commit that referenced this issue Jun 2, 2023
* attempting GoogleTest framework  #33

* added cmath include

* another approach to setting protected members

* i think i have the tests configured into CMake/CTest now

* start to look at GH actions workflow

* update notes on building

* update notes on building

* update notes on building

* updates to gh actions workflow

* add bmai_tests target

* notes

* fine tuning some config

* few more notes

* trying to work cout cmake3.8 limitations

* typo

* create build dir

* trying to recall cmake3.11 syntax

* FetchContent_Populate

* this old version of cmake is missing some helpful things

* get rid of targets

* msbuild?

* notes, comments, typos, clarifications, changelogs
pappde pushed a commit that referenced this issue Jun 2, 2023
* attempting GoogleTest framework  #33

* added cmath include

* another approach to setting protected members

* i think i have the tests configured into CMake/CTest now

* start to look at GH actions workflow

* update notes on building

* update notes on building

* update notes on building

* updates to gh actions workflow

* add bmai_tests target

* notes

* fine tuning some config

* few more notes

* trying to work cout cmake3.8 limitations

* attempt at disallowing the AI to surrender

* updated changelog

* test a build

* apparently the filesystem namespace is a bit bonkers

* trying to get ubuntu filesystem working

* better filesystem support i hope

* typo

* create build dir

* trying to recall cmake3.11 syntax

* FetchContent_Populate

* this old version of cmake is missing some helpful things

* get rid of targets

* msbuild?

* typo

* create build dir

* trying to recall cmake3.11 syntax

* FetchContent_Populate

* this old version of cmake is missing some helpful things

* get rid of targets

* msbuild?

* better filesystem support i hope

* notes, comments, typos, clarifications, changelogs

* typos, comments, notes, changelogs

* add regular auto releases to GHActions workflow
@danlangford
Copy link
Collaborator Author

closed by #34

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants