Problem 44616. Make your own Test Suite (part 2)

In this task you need to imagine that you — yes, YOU — have developed a problem on Cody for me to solve, and now you need to develop a Test Suite to check whether my submitted solutions meet your requirements or not.

So the tables are turned! You are now in the role of Tester! I am in the role of Player!

The problem you've set me is to:

  • output the sine of an angle, when the angle is specified in degrees as a (scalar) double, with no restriction in the domain.

You provide me with the following example for the function defined as s = SINE(a):

 % INPUT
 a = 45 % degrees
 % OUTPUT
 s = 1/sqrt(2)

Now I have responded by submitting a large number of purported 'solutions', some of which are reasonably accurate, and others which are either too imprecise or else logically flawed.

Your Test Suite (contained within your function testSuite) must address each of the elements of your problem specification:

  1. Check that my submitted code reliably returns sufficiently accurate values for sine of many different angles. Use the assert function.
  2. Ensure that the returned data type is suitable.
  3. You cannot use (or mention) the functions sind, sin, cscd or cosd in your Test Suite; any other functions are allowed. [ MOTIVATION: You shouldn't be exposing an efficient way of solving the problem within your Test Suite, otherwise I can just copy and paste your solution and submit it as my own! ]
  4. Your assert (or other) function must throw errors/exceptions with the following error message text contents.
  • 'Incorrect value' if the output is too inaccurate.
  • 'Incorrect data type' if the output is not appropriate.

When creating a Test Suite for a Cody problem it is a good habit to try to anticipate the tactics that diverse Players might employ!

See also:

Solution Stats

23.81% Correct | 76.19% Incorrect
Last Solution submitted on Oct 16, 2020

Problem Comments

Solution Comments

Show comments

Problem Recent Solvers3

Suggested Problems

More from this Author32

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!