gcc -std=c99 -Wall -pedantic -I/local/courses/csse2310/include -L/local/courses/csse2310/lib -lcsse2310a1 -o wordle wordle.c wordle.h gcc -std=c99 -Wall -pedantic -I/local/courses/csse2310/include -L/local/courses/csse2310/lib -lcsse2310a1 -g -o wordle-debug wordle.c wordle.h .../s4638520/Documents/CSSE2310/assessment1/wordle.h OK .../s4638520/Documents/CSSE2310/assessment1/wordle.c OK THIS IS NOT A GUARANTEE OF CORRECTNESS THE STYLE GUIDE IS FINAL Setting up for tests Time: Tue Mar 22 13:08:55 AEST 2022 Running make... make: Nothing to be done for 'all'. Running tests ... ---------------------------------------------------------------------- 1.1 - invalid_usage01 PASS 1.2 - invalid_usage02 PASS 1.3 - invalid_usage03 PASS 1.4 - invalid_usage04 PASS 1.5 - invalid_usage05 PASS 1.6 - invalid_usage06 PASS 1.7 - invalid_usage07 PASS 1.8 - invalid_usage08 PASS 1.9 - invalid_usage09 PASS 1.10 - invalid_usage10 PASS 1.11 - invalid_usage11 PASS 1.12 - invalid_usage12 PASS 1.13 - invalid_usage13 PASS 1.14 - invalid_usage14 PASS 1.15 - invalid_usage15 PASS 1.16 - invalid_usage16 PASS 1.17 - invalid_usage17 PASS 1.18 - invalid_usage18 PASS 1.19 - invalid_usage19 PASS 1.20 - invalid_usage20 PASS 2.1 - invalid_file01 PASS 2.2 - invalid_file02 PASS 2.3 - invalid_file03 PASS 2.4 - invalid_file04 PASS 2.5 - invalid_file05 PASS 2.6 - invalid_file06 PASS 2.7 - invalid_file07 PASS 2.8 - invalid_file08 PASS 3.1 - prompt01 PASS 3.2 - prompt02 PASS 4.1 - wrong_len01 PASS 4.2 - wrong_len02 PASS 4.3 - wrong_len03 PASS 5.1 - non_letters01 PASS 5.2 - non_letters02 PASS 5.3 - non_letters03 PASS 6.1 - incorrect_guesses01 PASS 6.2 - incorrect_guesses02 PASS 6.3 - incorrect_guesses03 PASS 6.4 - incorrect_guesses04 PASS 7.1 - various_capitalisation01 PASS 7.2 - various_capitalisation02 PASS 7.3 - various_capitalisation03 PASS 7.4 - various_capitalisation04 PASS 8.1 - running_out_of_attempts01 PASS 8.2 - running_out_of_attempts02 PASS 8.3 - running_out_of_attempts03 PASS 9.1 - handles_eof01 PASS 9.2 - handles_eof02 PASS 10.1 - right_answer01 PASS 10.2 - right_answer02 PASS ---------------------------------------------------------------------- Cleaning up ... Done ---------------------------------------------------------------------- === 1.1 - invalid_usage01 === Description: Check that args 'one two' considered invalid What the test runs: ./wordle 'one' 'two' > 1.1.stdout 2> 1.1.stderr What the test checks: Expect exit code: 1 Standard output (1.1.stdout) should match testfiles/empty Standard error (1.1.stderr) should match testfiles/1.1.stderr === 1.2 - invalid_usage02 === Description: Check that args 'one two three' considered invalid What the test runs: ./wordle 'one' 'two' 'three' > 1.2.stdout 2> 1.2.stderr What the test checks: Expect exit code: 1 Standard output (1.2.stdout) should match testfiles/empty Standard error (1.2.stderr) should match testfiles/1.1.stderr === 1.3 - invalid_usage03 === Description: Check that args 'one two three four' considered invalid What the test runs: ./wordle 'one' 'two' 'three' 'four' > 1.3.stdout 2> 1.3.stderr What the test checks: Expect exit code: 1 Standard output (1.3.stdout) should match testfiles/empty Standard error (1.3.stderr) should match testfiles/1.1.stderr === 1.4 - invalid_usage04 === Description: Check that args 'one two three four five' considered invalid What the test runs: ./wordle 'one' 'two' 'three' 'four' 'five' > 1.4.stdout 2> 1.4.stderr What the test checks: Expect exit code: 1 Standard output (1.4.stdout) should match testfiles/empty Standard error (1.4.stderr) should match testfiles/1.1.stderr === 1.5 - invalid_usage05 === Description: Check that args 'one two three four five six' considered invalid What the test runs: ./wordle 'one' 'two' 'three' 'four' 'five' 'six' > 1.5.stdout 2> 1.5.stderr What the test checks: Expect exit code: 1 Standard output (1.5.stdout) should match testfiles/empty Standard error (1.5.stderr) should match testfiles/1.1.stderr === 1.6 - invalid_usage06 === Description: Check that args '-max' considered invalid What the test runs: ./wordle '-max' > 1.6.stdout 2> 1.6.stderr What the test checks: Expect exit code: 1 Standard output (1.6.stdout) should match testfiles/empty Standard error (1.6.stderr) should match testfiles/1.1.stderr === 1.7 - invalid_usage07 === Description: Check that args '-len' considered invalid What the test runs: ./wordle '-len' > 1.7.stdout 2> 1.7.stderr What the test checks: Expect exit code: 1 Standard output (1.7.stdout) should match testfiles/empty Standard error (1.7.stderr) should match testfiles/1.1.stderr === 1.8 - invalid_usage08 === Description: Check that args '-max nonnumber' considered invalid What the test runs: ./wordle '-max' 'nonnumber' > 1.8.stdout 2> 1.8.stderr What the test checks: Expect exit code: 1 Standard output (1.8.stdout) should match testfiles/empty Standard error (1.8.stderr) should match testfiles/1.1.stderr === 1.9 - invalid_usage09 === Description: Check that args '-len nonnumber' considered invalid What the test runs: ./wordle '-len' 'nonnumber' > 1.9.stdout 2> 1.9.stderr What the test checks: Expect exit code: 1 Standard output (1.9.stdout) should match testfiles/empty Standard error (1.9.stderr) should match testfiles/1.1.stderr === 1.10 - invalid_usage10 === Description: Check that args '-max 5 -len' considered invalid What the test runs: ./wordle '-max' '5' '-len' > 1.10.stdout 2> 1.10.stderr What the test checks: Expect exit code: 1 Standard output (1.10.stdout) should match testfiles/empty Standard error (1.10.stderr) should match testfiles/1.1.stderr === 1.11 - invalid_usage11 === Description: Check that args '-max 2' considered invalid What the test runs: ./wordle '-max' '2' > 1.11.stdout 2> 1.11.stderr What the test checks: Expect exit code: 1 Standard output (1.11.stdout) should match testfiles/empty Standard error (1.11.stderr) should match testfiles/1.1.stderr === 1.12 - invalid_usage12 === Description: Check that args '-max 10' considered invalid What the test runs: ./wordle '-max' '10' > 1.12.stdout 2> 1.12.stderr What the test checks: Expect exit code: 1 Standard output (1.12.stdout) should match testfiles/empty Standard error (1.12.stderr) should match testfiles/1.1.stderr === 1.13 - invalid_usage13 === Description: Check that args '-max 3abc' considered invalid What the test runs: ./wordle '-max' '3abc' > 1.13.stdout 2> 1.13.stderr What the test checks: Expect exit code: 1 Standard output (1.13.stdout) should match testfiles/empty Standard error (1.13.stderr) should match testfiles/1.1.stderr === 1.14 - invalid_usage14 === Description: Check that args '-max 3 dictionary extra-arg' considered invalid What the test runs: ./wordle '-max' '3' 'dictionary' 'extra-arg' > 1.14.stdout 2> 1.14.stderr What the test checks: Expect exit code: 1 Standard output (1.14.stdout) should match testfiles/empty Standard error (1.14.stderr) should match testfiles/1.1.stderr === 1.15 - invalid_usage15 === Description: Check that args '-max 8 -len nonnumber' considered invalid What the test runs: ./wordle '-max' '8' '-len' 'nonnumber' > 1.15.stdout 2> 1.15.stderr What the test checks: Expect exit code: 1 Standard output (1.15.stdout) should match testfiles/empty Standard error (1.15.stderr) should match testfiles/1.1.stderr === 1.16 - invalid_usage16 === Description: Check that args '-max 8 -max 8' considered invalid What the test runs: ./wordle '-max' '8' '-max' '8' > 1.16.stdout 2> 1.16.stderr What the test checks: Expect exit code: 1 Standard output (1.16.stdout) should match testfiles/empty Standard error (1.16.stderr) should match testfiles/1.1.stderr === 1.17 - invalid_usage17 === Description: Check that args '-guess' considered invalid What the test runs: ./wordle '-guess' > 1.17.stdout 2> 1.17.stderr What the test checks: Expect exit code: 1 Standard output (1.17.stdout) should match testfiles/empty Standard error (1.17.stderr) should match testfiles/1.1.stderr === 1.18 - invalid_usage18 === Description: Check that args '-max 3 -max 5 /usr/share/dict/words' considered invalid What the test runs: ./wordle '-max' '3' '-max' '5' '/usr/share/dict/words' > 1.18.stdout 2> 1.18.stderr What the test checks: Expect exit code: 1 Standard output (1.18.stdout) should match testfiles/empty Standard error (1.18.stderr) should match testfiles/1.1.stderr === 1.19 - invalid_usage19 === Description: Check that args '-max 5 -len 5 /usr/share/dict/words extra' considered invalid What the test runs: ./wordle '-max' '5' '-len' '5' '/usr/share/dict/words' 'extra' > 1.19.stdout 2> 1.19.stderr What the test checks: Expect exit code: 1 Standard output (1.19.stdout) should match testfiles/empty Standard error (1.19.stderr) should match testfiles/1.1.stderr === 1.20 - invalid_usage20 === Description: Check that args '-guess 8' considered invalid What the test runs: ./wordle '-guess' '8' > 1.20.stdout 2> 1.20.stderr What the test checks: Expect exit code: 1 Standard output (1.20.stdout) should match testfiles/empty Standard error (1.20.stderr) should match testfiles/1.1.stderr === 2.1 - invalid_file01 === Description: Dictionary 'hello.there.csse2310' unable to be opened with program args '' What the test runs: ./wordle 'hello.there.csse2310' > 2.1.stdout 2> 2.1.stderr What the test checks: Expect exit code: 2 Standard output (2.1.stdout) should match testfiles/empty Standard error (2.1.stderr) should match testfiles/2.1.stderr === 2.2 - invalid_file02 === Description: Dictionary '/does/not/exist' unable to be opened with program args '' What the test runs: ./wordle '/does/not/exist' > 2.2.stdout 2> 2.2.stderr What the test checks: Expect exit code: 2 Standard output (2.2.stdout) should match testfiles/empty Standard error (2.2.stderr) should match testfiles/2.2.stderr === 2.3 - invalid_file03 === Description: Dictionary '/var/log/cron' unable to be opened with program args '' What the test runs: ./wordle '/var/log/cron' > 2.3.stdout 2> 2.3.stderr What the test checks: Expect exit code: 2 Standard output (2.3.stdout) should match testfiles/empty Standard error (2.3.stderr) should match testfiles/2.3.stderr === 2.4 - invalid_file04 === Description: Dictionary '../nope' unable to be opened with program args '' What the test runs: ./wordle '../nope' > 2.4.stdout 2> 2.4.stderr What the test checks: Expect exit code: 2 Standard output (2.4.stdout) should match testfiles/empty Standard error (2.4.stderr) should match testfiles/2.4.stderr === 2.5 - invalid_file05 === Description: Dictionary 'hello.there.csse2310' unable to be opened with program args '-len 4' What the test runs: ./wordle '-len' '4' 'hello.there.csse2310' > 2.5.stdout 2> 2.5.stderr What the test checks: Expect exit code: 2 Standard output (2.5.stdout) should match testfiles/empty Standard error (2.5.stderr) should match testfiles/2.5.stderr === 2.6 - invalid_file06 === Description: Dictionary '/does/not/exist' unable to be opened with program args '-len 4' What the test runs: ./wordle '-len' '4' '/does/not/exist' > 2.6.stdout 2> 2.6.stderr What the test checks: Expect exit code: 2 Standard output (2.6.stdout) should match testfiles/empty Standard error (2.6.stderr) should match testfiles/2.6.stderr === 2.7 - invalid_file07 === Description: Dictionary '/var/log/cron' unable to be opened with program args '-len 4' What the test runs: ./wordle '-len' '4' '/var/log/cron' > 2.7.stdout 2> 2.7.stderr What the test checks: Expect exit code: 2 Standard output (2.7.stdout) should match testfiles/empty Standard error (2.7.stderr) should match testfiles/2.7.stderr === 2.8 - invalid_file08 === Description: Dictionary '../nope' unable to be opened with program args '-len 4' What the test runs: ./wordle '-len' '4' '../nope' > 2.8.stdout 2> 2.8.stderr What the test checks: Expect exit code: 2 Standard output (2.8.stdout) should match testfiles/empty Standard error (2.8.stderr) should match testfiles/2.8.stderr === 3.1 - prompt01 === Description: Check for welcome and prompt What the test runs: testfiles/run_wordle.sh 'right' '/dev/null' '-lines' '2' > 3.1.stdout 2> 3.1.stderr What the test checks: Standard output (3.1.stdout) should match testfiles/3.1.stdout === 3.2 - prompt02 === Description: Check for welcome and prompt 2 What the test runs: testfiles/run_wordle.sh 'right' '/dev/null' '-lines' '2' '-max' '3' > 3.2.stdout 2> 3.2.stderr What the test checks: Standard output (3.2.stdout) should match testfiles/3.2.stdout === 4.1 - wrong_len01 === Description: Check guess of length 4 with default word length What the test runs: testfiles/run_wordle.sh 'right' 'testfiles/wronglen.1' > 4.1.stdout 2> 4.1.stderr What the test checks: Standard output (4.1.stdout) should match testfiles/4.1.stdout === 4.2 - wrong_len02 === Description: Check guess of length 0 with default word length What the test runs: testfiles/run_wordle.sh 'right' 'testfiles/wronglen.2' > 4.2.stdout 2> 4.2.stderr What the test checks: Standard output (4.2.stdout) should match testfiles/4.1.stdout === 4.3 - wrong_len03 === Description: Check guesses that are too long (word length 4) What the test runs: testfiles/run_wordle.sh 'word' 'testfiles/wronglen.3' '-len' '4' > 4.3.stdout 2> 4.3.stderr What the test checks: Standard output (4.3.stdout) should match testfiles/4.3.stdout === 5.1 - non_letters01 === Description: Check program handles guesses with non letters - with args '-len 6 -max 7' What the test runs: testfiles/run_wordle.sh 'right' 'testfiles/nonletters.1' > 5.1.stdout 2> 5.1.stderr What the test checks: Standard output (5.1.stdout) should match testfiles/5.1.stdout === 5.2 - non_letters02 === Description: Check program handles guesses with non letters - with args '-len 6 -max 7' What the test runs: testfiles/run_wordle.sh 'there' 'testfiles/nonletters.2' > 5.2.stdout 2> 5.2.stderr What the test checks: Standard output (5.2.stdout) should match testfiles/5.2.stdout === 5.3 - non_letters03 === Description: Check program handles guesses with non letters - with args '-len 6 -max 7' What the test runs: testfiles/run_wordle.sh 'cat' 'testfiles/nonletters.3' '-len' '3' > 5.3.stdout 2> 5.3.stderr What the test checks: Standard output (5.3.stdout) should match testfiles/5.3.stdout === 6.1 - incorrect_guesses01 === Description: Single invalid guess, default dictionary and other options What the test runs: testfiles/run_wordle.sh 'lines' 'testfiles/invalid.1' > 6.1.stdout 2> 6.1.stderr What the test checks: Standard output (6.1.stdout) should match testfiles/6.1.stdout === 6.2 - incorrect_guesses02 === Description: Multiple invalid guesses, default dictionary and other options What the test runs: testfiles/run_wordle.sh 'guess' 'testfiles/invalid.2' > 6.2.stdout 2> 6.2.stderr What the test checks: Standard output (6.2.stdout) should match testfiles/6.2.stdout Expect exit code: 3 === 6.3 - incorrect_guesses03 === Description: Multiple invalid guesses, supplied dictionary and default other options What the test runs: testfiles/run_wordle.sh 'marks' 'testfiles/invalid.3' '/local/courses/csse2310/etc/common-words' > 6.3.stdout 2> 6.3.stderr What the test checks: Standard output (6.3.stdout) should match testfiles/6.2.stdout === 6.4 - incorrect_guesses04 === Description: Multiple invalid guesses, default dictionary, other args given What the test runs: testfiles/run_wordle.sh 'answer' 'testfiles/invalid.4' '-len' '6' > 6.4.stdout 2> 6.4.stderr What the test checks: Standard output (6.4.stdout) should match testfiles/6.4.stdout === 7.1 - various_capitalisation01 === Description: Single incorrect guess, default dictionary and other options What the test runs: testfiles/run_wordle.sh 'hands' 'testfiles/incorrect.1' > 7.1.stdout 2> 7.1.stderr What the test checks: Standard output (7.1.stdout) should match testfiles/7.1.stdout === 7.2 - various_capitalisation02 === Description: Multiple incorrect guesses, default dictionary and other options What the test runs: testfiles/run_wordle.sh 'guess' 'testfiles/incorrect.2' > 7.2.stdout 2> 7.2.stderr What the test checks: Standard output (7.2.stdout) should match testfiles/7.2.stdout === 7.3 - various_capitalisation03 === Description: Multiple incorrect guesses, supplied dictionary and default other options What the test runs: testfiles/run_wordle.sh 'marks' 'testfiles/incorrect.3' '/local/courses/csse2310/etc/common-words' > 7.3.stdout 2> 7.3.stderr What the test checks: Standard output (7.3.stdout) should match testfiles/7.3.stdout === 7.4 - various_capitalisation04 === Description: Multiple incorrect guesses, default dictionary, other args given What the test runs: testfiles/run_wordle.sh 'answer' 'testfiles/incorrect.4' '-len' '6' > 7.4.stdout 2> 7.4.stderr What the test checks: Standard output (7.4.stdout) should match testfiles/7.4.stdout === 8.1 - running_out_of_attempts01 === Description: Multiple incorrect guesses, default dictionary and other options What the test runs: testfiles/run_wordle.sh 'guess' 'testfiles/incorrect.2' > 8.1.stdout 2> 8.1.stderr What the test checks: Expect exit code: 3 Standard output (8.1.stdout) should match testfiles/8.1.stdout Standard error (8.1.stderr) should match testfiles/8.1.stderr === 8.2 - running_out_of_attempts02 === Description: Multiple incorrect guesses, supplied dictionary and max 3 guesses What the test runs: testfiles/run_wordle.sh 'marks' 'testfiles/incorrect.3' '-max' '3' '/local/courses/csse2310/etc/common-words' > 8.2.stdout 2> 8.2.stderr What the test checks: Expect exit code: 3 Standard output (8.2.stdout) should match testfiles/8.2.stdout Standard error (8.2.stderr) should match testfiles/8.2.stderr === 8.3 - running_out_of_attempts03 === Description: Multiple incorrect guesses, default dictionary, word length 6 What the test runs: testfiles/run_wordle.sh 'answer' 'testfiles/incorrect.4' '-len' '6' > 8.3.stdout 2> 8.3.stderr What the test checks: Expect exit code: 3 Standard output (8.3.stdout) should match testfiles/8.3.stdout Standard error (8.3.stderr) should match testfiles/8.3.stderr === 9.1 - handles_eof01 === Description: Single blank line input before EOF What the test runs: testfiles/run_wordle.sh 'right' 'testfiles/eof.1' > 9.1.stdout 2> 9.1.stderr What the test checks: Expect exit code: 3 Standard output (9.1.stdout) should match testfiles/9.1.stdout Standard error (9.1.stderr) should match testfiles/9.1.stderr === 9.2 - handles_eof02 === Description: EOF after second guess (before newline) What the test runs: testfiles/run_wordle.sh 'right' 'testfiles/eof.2' > 9.2.stdout 2> 9.2.stderr What the test checks: Expect exit code: 3 Standard output (9.2.stdout) should match testfiles/9.2.stdout Standard error (9.2.stderr) should match testfiles/9.1.stderr === 10.1 - right_answer01 === Description: Correct answer on third guess What the test runs: testfiles/run_wordle.sh 'right' 'testfiles/right.1' > 10.1.stdout 2> 10.1.stderr What the test checks: Expect exit code: 0 Standard output (10.1.stdout) should match testfiles/10.1.stdout Standard error (10.1.stderr) should match testfiles/empty === 10.2 - right_answer02 === Description: Correct answer on third guess - mixed capitalisation What the test runs: testfiles/run_wordle.sh 'right' 'testfiles/right.2' > 10.2.stdout 2> 10.2.stderr What the test checks: Expect exit code: 0 Standard output (10.2.stdout) should match testfiles/10.1.stdout Standard error (10.2.stderr) should match testfiles/empty ---------------------------------------------------------------------- Cleaning up ... Done ==2665080== Memcheck, a memory error detector ==2665080== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==2665080== Using Valgrind-3.17.0 and LibVEX; rerun with -h for copyright info ==2665080== Command: ./wordle-debug 100words.txt ==2665080== Bad luck - the word is "diary". Welcome to Wordle! Enter a 5 letter word (6 attempts remaining): ==2665080== ==2665080== HEAP SUMMARY: ==2665080== in use at exit: 0 bytes in 0 blocks ==2665080== total heap usage: 138 allocs, 138 frees, 34,477 bytes allocated ==2665080== ==2665080== All heap blocks were freed -- no leaks are possible ==2665080== ==2665080== For lists of detected and suppressed errors, rerun with: -s ==2665080== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)