Create unit tests for our numerics math library (LIBBN)BRL-CAD
Status: ClosedTime to complete: 72 hrs Mentors: erikgTags: C, unit test, math

There are dozens of files in our core LIBBN library. As a core library used by nearly every one of BRL-CAD's tools, testing those functions for correct behavior is important.

References:

  • include/bn.h
  • include/plot3.h
  • include/vmath.h
  • src/libbn/rand.c
  • src/libbu/tests/*.c (note libbu, not libbn for examples)
  • src/libbn/tests/*.c (also many examples, but not as good)

Code:

  • src/libbn/tests/rand.c
  • src/libbn/tests/CMakeLists.txt

This task involves implementing a new unit test for any of LIBBN's source files that do not already have a unit test defined.  The test should run at least 10 public functions if there are multiple functions defined within one of our source files.

Some files, like our mat.c file, have LOTS of functions.  You don't have to test them all!  Just test at least 10 of them and if any prove to be challenging, let us know before you invest more than an hour.  Your unit test(s) must be hooked into our build system and "should" pass.  If you find a genuine bug, let us know (we can create follow-on tasks for any you investigate and fix).  We have lots of existing unit tests to follow as an example.

Submit your new unit test and build system changes as a patch file.  Let us know about any problems or bugs encountered.

Uploaded Work
File name/URLFile sizeDate submitted
bn_complex_tests.tar.gz2.9 KBDecember 20 2013 01:34 UTC
Comments
Peter Amidonon December 19 2013 21:41 UTCTask Claimed

I would like to work on this task.

starseeker on December 20 2013 01:31 UTCTask Assigned

This task has been assigned to Andromeda Galaxy. You have 72 hours to complete this task, good luck!

Peter Amidonon December 20 2013 01:35 UTCReady for review

The work on this task is ready to be reviewed.

Sean on December 20 2013 04:46 UTCTask Closed

Congratulations, this task has been completed successfully.

Sean on December 20 2013 05:10 UTCgood justification

Thanks for the justification background, I concur.  Completing a group that makes a set is good.  Nice work.

Peter Amidonon December 20 2013 05:57 UTCcommit


This was committed as r59083