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

Unit Test Suite Update #352

Merged
merged 99 commits into from
Feb 2, 2024
Merged

Unit Test Suite Update #352

merged 99 commits into from
Feb 2, 2024

Conversation

FinnWilkinson
Copy link
Contributor

@FinnWilkinson FinnWilkinson commented Dec 6, 2023

This pull request aims to update the Unit test suite of SimEng such that all classes have comprehensive coverage of their functionality tested. Closes #340

No tests have been added / updated for the following classes due to radical changes / replacement in current Pull Requests or in the very near future:

  • CoreInstance
    • Soon to be removed/radically changed in near future
  • MicroDecoder
    • Logic should be tested via the MicroOperation.cc regression tests
    • All functions except decode (as of this PR) are now private - this change was made to conform to standard OOP practices; given they are only used within the class itself.

This PR also contains a fixes for issues #365, #202, #133.

@FinnWilkinson FinnWilkinson added the tests Testing and CI label Dec 6, 2023
@FinnWilkinson FinnWilkinson self-assigned this Dec 6, 2023
@FinnWilkinson FinnWilkinson linked an issue Dec 6, 2023 that may be closed by this pull request
FinnWilkinson and others added 25 commits December 14, 2023 14:44
test/unit/FixedLatencyMemoryInterfaceTest.cc Show resolved Hide resolved
src/lib/arch/aarch64/Instruction_decode.cc Outdated Show resolved Hide resolved
src/lib/arch/aarch64/Instruction_decode.cc Outdated Show resolved Hide resolved
jj16791
jj16791 previously approved these changes Jan 27, 2024
@FinnWilkinson FinnWilkinson linked an issue Jan 29, 2024 that may be closed by this pull request
@FinnWilkinson FinnWilkinson linked an issue Jan 29, 2024 that may be closed by this pull request
ABenC377
ABenC377 previously approved these changes Jan 30, 2024
Copy link
Contributor

@ABenC377 ABenC377 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍🏻

JosephMoore25
JosephMoore25 previously approved these changes Jan 31, 2024
Copy link
Contributor

@JosephMoore25 JosephMoore25 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Couldn't spot anything that needs changing, looks all good - nice work.

Only thing to consider, although not worth blocking this PR over, is the files src/include/simeng/arch/aarch64/helpers/load.hh and store.hh. These are empty templates for future helper functions, so should either be removed until needed or ideally a ToDo added in each to explain why they're there, although perhaps this can be handled in a future cleanup PR instead.

Copy link
Contributor

@dANW34V3R dANW34V3R left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a way we can quantify our coverage now that these tests are implemented?

src/include/simeng/arch/riscv/Instruction.hh Outdated Show resolved Hide resolved
src/lib/arch/riscv/ExceptionHandler.cc Show resolved Hide resolved
src/include/simeng/arch/aarch64/helpers/load.hh Outdated Show resolved Hide resolved
test/unit/FixedLatencyMemoryInterfaceTest.cc Show resolved Hide resolved
test/unit/FlatMemoryInterfaceTest.cc Outdated Show resolved Hide resolved
test/unit/pipeline/FetchUnitTest.cc Show resolved Hide resolved
test/unit/ShiftValueTest.cc Outdated Show resolved Hide resolved
@FinnWilkinson FinnWilkinson merged commit f5e7aac into dev Feb 2, 2024
2 checks passed
@FinnWilkinson FinnWilkinson deleted the unit-test-update branch February 21, 2024 17:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.9.6 Part of SimEng Release 0.9.6 enhancement New feature or request tests Testing and CI
Projects
Archived in project
5 participants