Giter Club home page Giter Club logo

eztest's Issues

POSIX reserved

Currently, there is a large usage of underscores to indicate that the function should not be used by the user. This is a problem as functions starting with an underscore are reserved.

Proposed fix: replace '_' with 'eztest'

The downside here is that it is not as clear to the user what functions should be accessed and which should not be accessed. With this said, it is a change that must be done.

[FEATURE REQUEST] Failed tests only mode

Is your feature request related to a problem? Please describe.
When many tests are run the output can be overwhelming.

Describe the solution you'd like
I would like a mode/option that only prints test output if the test fails.

[FEATURE REQUEST] Asserts with custom comparator

Is your feature request related to a problem? Please describe.
Testing structs can be a hassle when having to assert each individual part.

Describe the solution you'd like
An assert macro that takes a comparator function as parameter.

[BUG] Base tests runs when multiple test files

Describe the bug
When running tests with multiple test files, the base test used as a reference also runs.

To Reproduce
Steps to reproduce the behavior:

  1. Use multiple files for tests, each with #include eztest/core/eztest.h
  2. Build and run

Expected behavior
The base/ reference test should never run.

[FEATURE REQUEST] Quiet mode

Is your feature request related to a problem? Please describe.
The human readable output is not always wanted and/ or needed.

Describe the solution you'd like
I would like a quiet/ silent mode that makes sure nothing is printed to the screen. Rather the exit status should represent all tests passed (returns 0) or at least one test failed (returns 1).

New asserts: Greater/ less, Less equal, greater equal

4 new equality asserts should be added:

  • Greater: test if the first value is greater than the second value.
  • Less (Test if the first value is less than the second)
  • Greater or equal: test if the first value is greater than or equal to the second value.
  • Less or equal: test if the first value is less than or equal to the second value.

[FEATURE REQUEST] Report only mode

Is your feature request related to a problem? Please describe.
When running a lot of tests, the output can be overwhelming.

Describe the solution you'd like
I would like a option/ mode that only prints out a final report giving me an overview of the test results.

Docs further detailing usage of each assert

Each asserts should have further detailed docs. These docs should at minimum include:

  • Description
  • Parameter list with expected data types and description for each parameter.
  • Example

[FEATURE REQUEST] Add test timer

Describe the solution you'd like
I would like for each test to be timed. The time of the test should be displayed along with the test result.

Short-hand asserts

Currently all assert macros follow a naming convention of clearly defining use and meaning, however it may be favorable to also have short-hands for each macro.

Example:

ASSERT_ARE_NOT_EQUAL could have a short-hand macro with the name ASSERT_NE.
ASSERT_ARE_EQUAL could have a short-hand macro with the name ASSERT_EQ.

Timer option should provide overall time

Is your feature request related to a problem? Please describe.
Currently, the timer option displays the time for each unit test. It does not display the overall (combined) time for all unit tests.

Describe the solution you'd like
The total time should be displayed at the end along with the report.

[FEATURE REQUEST] Skip tests

Is your feature request related to a problem? Please describe.
A user does not always want to run all tests.

Describe the solution you'd like
The user should be able to supply suits or tests that should not run. This can be done through command line arguments so the user does not have to change their code and recompile in order to skip tests.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.