From ac396e281a6c1cc2c9b39fc660b8527bbef02163 Mon Sep 17 00:00:00 2001 From: Matthew Ellison Date: Wed, 16 May 2018 01:15:17 -0400 Subject: [PATCH] Added new tests for Playfair --- testMain.hpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/testMain.hpp b/testMain.hpp index c87cda8..5e8dc95 100644 --- a/testMain.hpp +++ b/testMain.hpp @@ -340,6 +340,29 @@ bool playfairTest(std::string& errorString){ passed = false; } + //Test from wikipedia + keyword = "Playfair Example"; + inputString = "Hide the gold in the tree stum"; + outputString = "BMODZBXDNABEKUDMUIXMMOUVIM"; + //Setup the cipher + cipherString = cipher.encode(keyword, inputString); + //If the cipher didn't spit out the correct string throw an error + if(cipherString != outputString){ + errorString += testingError(ENCODE, inputString, outputString, cipherString); + passed = false; + } + //This removes the spaces and turns everything capital so the reverse will work correctly + inputString = cipher.getInputString(); + + //Do the same thing in reverse + cipher.reset(); + cipherString = cipher.decode(keyword, outputString); + //If the cipher didn't spit out the correct string throw an error + if(cipherString != inputString){ + errorString += testingError(DECODE, outputString, inputString, cipherString); + passed = false; + } + //Return if the cipher passed the tests return passed; }