From eca8f696c3a0cb0d9b0ccee611a63bd2901da7b0 Mon Sep 17 00:00:00 2001 From: ngonmonica Date: Thu, 27 Feb 2014 11:36:41 -0600 Subject: [PATCH] Update Piratizer. --- .../comp124/stringtransformer/Piratizer.java | 46 +++++++++++++++++++ .../stringtransformer/PiratizerTest.java | 22 +++++++++ 2 files changed, 68 insertions(+) create mode 100644 src/edu/macalester/comp124/stringtransformer/Piratizer.java create mode 100644 test/edu/macalester/comp124/stringtransformer/PiratizerTest.java diff --git a/src/edu/macalester/comp124/stringtransformer/Piratizer.java b/src/edu/macalester/comp124/stringtransformer/Piratizer.java new file mode 100644 index 0000000..cd4f517 --- /dev/null +++ b/src/edu/macalester/comp124/stringtransformer/Piratizer.java @@ -0,0 +1,46 @@ +package edu.macalester.comp124.stringtransformer; + +import acm.util.RandomGenerator; + +/** + * Created by Monica on 2/27/14. + */ +public class Piratizer extends StringTransformer { + + + + @Override + + public String transform(String s) { + int length = s.length(); + String addString = ""; + RandomGenerator randGen = RandomGenerator.getInstance(); + int randNum = randGen.nextInt(100); + int randNum2 = randGen.nextInt(2); + for (int i = 0; i < length; i++){ + addString = addString + s.charAt(i); + if(s.charAt(i) == 'r'){ + addString = addString + "rr"; + } + if (randNum <= 25){ + if (randNum2 == 1){ + addString = addString + "Arr!"; + } + if (randNum2 == 2){ + addString = addString + "Ahoy!"; + } + } + } + return addString; + } + + @Override + public String toString() { + return "Pirates"; + } + + + + + +} diff --git a/test/edu/macalester/comp124/stringtransformer/PiratizerTest.java b/test/edu/macalester/comp124/stringtransformer/PiratizerTest.java new file mode 100644 index 0000000..f144aaa --- /dev/null +++ b/test/edu/macalester/comp124/stringtransformer/PiratizerTest.java @@ -0,0 +1,22 @@ +package edu.macalester.comp124.stringtransformer; + +import org.junit.Test; + +import static org.junit.Assert.assertEquals; + +/** + * Created by Monica on 2/27/14. + */ +public class PiratizerTest { + private final StringTransformer pirates = new Piratizer(); + + @Test + public void handlesEmptyString() { + assertEquals("", pirates.transform("")); + } + + @Test + public void testRRRs(){ + assertEquals("Herrre arrre rrrs.", pirates.transform("Here are rs.")); + } +}