From 442a49ad5a48d417345959b903ae6a6d32d55759 Mon Sep 17 00:00:00 2001 From: Haidong Ji Date: Fri, 15 Apr 2022 15:51:30 -0500 Subject: Great C programming fun Excellent fundamentals and displine training, many tools and techniques exercises: gdb, emacs, valgrind, git --- 08_testing/README | 32 ++++++++++++++++++++++++++++++++ 08_testing/grade.txt | 19 +++++++++++++++++++ 08_testing/input.1 | 1 + 08_testing/input.2 | 1 + 08_testing/input.3 | 1 + 08_testing/input.4 | 1 + 6 files changed, 55 insertions(+) create mode 100644 08_testing/README create mode 100644 08_testing/grade.txt create mode 100644 08_testing/input.1 create mode 100644 08_testing/input.2 create mode 100644 08_testing/input.3 create mode 100644 08_testing/input.4 (limited to '08_testing') diff --git a/08_testing/README b/08_testing/README new file mode 100644 index 0000000..90b0008 --- /dev/null +++ b/08_testing/README @@ -0,0 +1,32 @@ +In this assignment, you will be black-box testing a few +broken implementations of "isPrime". You will see +that there are four broken implementations of isPrime: + +isPrime-broken1 +isPrime-broken2 +isPrime-broken3 +isPrime-broken4 + +as well as a correct implementation: + +isPrime-correct + +All of these take one command line argument, which is the *integer* +to test for primality. For example, you might run + +$ ./isPrime-correct 3 +3 is prime +$ ./isPrime-correct 4 +4 is not prime + +Your job is to find a test case for each broken implementation which +shows that it is not correct---that is, where its behavior differs +from that of isPrime-correct. Note that we do not expect you to brute +force this task. Think about what types of common errors could occur. + +For each broken program, write the input which breaks the program +into a file called "input.X" where X is 1, 2, 3, or 4 (so input.1 has +the command line argument that shows that isPrime-broken1 is broken). + +Note that isPrime-correct's behavior is considered correct, and +any test case which deviates from it is considered wrong. diff --git a/08_testing/grade.txt b/08_testing/grade.txt new file mode 100644 index 0000000..c331a43 --- /dev/null +++ b/08_testing/grade.txt @@ -0,0 +1,19 @@ +Grading at Mon 29 Nov 2021 01:58:24 AM UTC +################################################# +test input.1: +Your file matched the expected output +input.1 passed +################################################# +test input.2: +Your file matched the expected output +input.2 passed +################################################# +test input.3: +Your file matched the expected output +input.3 passed +################################################# +test input.4: +Your file matched the expected output +input.4 passed + +Overall Grade: A diff --git a/08_testing/input.1 b/08_testing/input.1 new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/08_testing/input.1 @@ -0,0 +1 @@ +1 diff --git a/08_testing/input.2 b/08_testing/input.2 new file mode 100644 index 0000000..a51fa7d --- /dev/null +++ b/08_testing/input.2 @@ -0,0 +1 @@ +2147483647 diff --git a/08_testing/input.3 b/08_testing/input.3 new file mode 100644 index 0000000..a8994dc --- /dev/null +++ b/08_testing/input.3 @@ -0,0 +1 @@ +1a diff --git a/08_testing/input.4 b/08_testing/input.4 new file mode 100644 index 0000000..3a2e3f4 --- /dev/null +++ b/08_testing/input.4 @@ -0,0 +1 @@ +-1 -- cgit v1.2.3