Example #1
0
        public void TestEraserRemovesWordAsEntered()
        {
            // Act
            paper.Text += pencil.Write(testSentence);
            paper.Text  = eraser.Erase(testWord, paper.Text);

            // Assert
            Assert.AreEqual(testSentenceWithWhiteSpace, paper.Text, "Test sentence should match paper text, eraser should remove entered word");
        }
Example #2
0
        public void WhenPencilWritesMorePaperStoresAdditionalWriting()
        {
            Pencil pencil = new Pencil(500, 5);
            Paper  paper  = new Paper();

            pencil.Write("Hello World", paper);
            pencil.Write(" How are you", paper);
            Assert.AreEqual("Hello World" + " How are you", paper.Text);
        }
Example #3
0
        public void WriteWithZeroDurabilityReturnsProperNumberOfWhiteSpace()
        {
            Pencil pencil = new Pencil(tipDurability1);

            pencil.Write(oneDurabilityWrite);
            expectedString = "    "; //T E S T - 4 letters, 4 white space

            actualString = pencil.Write(singleWord5toWrite4toErase);

            Assert.AreEqual(expectedString, actualString);
        }
Example #4
0
        public void TestPencilWritesToPaper()
        {
            // Act
            paper.Text += pencil.Write(genericTestSentence);

            // Assert
            Assert.AreEqual(genericTestSentence, paper.Text, "The text of the paper should match the constant testSentence");
        }
        public void Pencil_EditWithNoPreviousErase_Throws()
        {
            var paper  = new Paper("An apple a day keeps the doctor away");
            var eraser = new Eraser(paper, 20);
            var pencil = new Pencil(new PencilProperties()
            {
                Paper = paper, PointDegradation = 10, MaxNumberOfSharpenings = 3, Eraser = eraser
            });

            pencil.Write("artichoke", WritingMode.Edit);
            Assert.ThrowsException <Exception>(() => pencil.Write("artichoke", WritingMode.Edit), ExceptionMessages.NoPreviousErasedTextToEdit);
        }
Example #6
0
        public void WriteMethodShouldAppendTextToString()
        {
            string expectedText = "Hello World";
            string actualText;

            Pencil pencil = new Pencil(20, 20);

            actualText = pencil.Write("Hello");
            actualText = pencil.Write(" World");

            Assert.AreEqual(expectedText, actualText);
        }
Example #7
0
        public void WriteStopsAt0Durabilility()
        {
            Pencil pencil = new Pencil(tipDurability20, length500, eraserDurability10);

            expectedInt = 0;


            pencil.Write(phrase14toWrite12toErasewithWhitespace);
            pencil.Write(phrase14toWrite12toErasewithWhitespace);
            actualInt = pencil.GetTip();

            Assert.AreEqual(expectedInt, actualInt);
        }
Example #8
0
        public void WriteStopsAt0Durabilility()
        {
            Pencil pencil = new Pencil(tipDurability, length, eraser);

            expectedInt = 0;

            // tip durability is 20. testPhrase costs 14. Run twice
            pencil.Write(phraseInput); // expected 6 durability left
            pencil.Write(phraseInput); // expected 0 durability, as 6-14 is less than 0
            actualInt = pencil.Tip;

            Assert.AreEqual(expectedInt, actualInt);
        }
Example #9
0
        public void PointDurabilityFallingToZeroShouldWriteOnlySpaces()
        {
            string expectedText = "Hello Wor  ";
            string actualText;

            Pencil pencil = new Pencil(20, 10);

            pencil.Write("Hello");
            pencil.Write(" World");
            actualText = pencil.Written;

            Assert.AreEqual(expectedText, actualText);
        }
Example #10
0
        public void SharpenShouldResetDurabilityToChosenValueIfLessThanRemaining()
        {
            string expectedText = "Hell  Wo   ";
            string actualText;

            Pencil pencil = new Pencil(8, 5);

            pencil.Write("Hello");
            pencil.Sharpen(5);
            pencil.Write(" World");
            actualText = pencil.Written;

            Assert.AreEqual(expectedText, actualText);
        }
Example #11
0
        public void WhenWritePassedUpperCaseCharAndCurrentPointDurabilityIsOneCurrentPointDurabiltySetToZero()
        {
            Pencil pencil = new Pencil(1, 1);

            pencil.Write("A");
            Assert.AreEqual(0, pencil.PointDurability);
        }
Example #12
0
 public void WhenPencilWithLengthGreaterThanZeroIsSharpenedDurabilityIsRestored()
 {
     pencil = new Pencil(20, 5, 10);
     pencil.Write("", "Mary had");
     pencil.Sharpen(pencil.Length);
     Assert.Equal(20, pencil.Durability);
 }
Example #13
0
        public void WhenWritePassedEmptyStringPointDurabilityNotAffected()
        {
            Pencil pencil = new Pencil();

            pencil.Write(" ");
            Assert.AreEqual(20, pencil.PointDurability);
        }
Example #14
0
        public void WhenWritePassedLowerCaseCharPointDurabilityDecreasedByOne()
        {
            Pencil pencil = new Pencil();

            pencil.Write("a");
            Assert.AreEqual(19, pencil.PointDurability);
        }
Example #15
0
 public void WhenPencilLengthIsZeroThePencilDurabilityIsNotChangedIfSharpened()
 {
     pencil = new Pencil(10, 0, 10);
     pencil.Write("", "little ");
     pencil.Sharpen(pencil.Length);
     Assert.Equal(4, pencil.Durability);
 }
Example #16
0
        public void WhenWriteMethodPassedAStringItReturnsString()
        {
            Pencil pencil = new Pencil(20, 5);
            Paper  paper  = new Paper();

            Assert.AreEqual("Hello World!", pencil.Write("Hello World!", paper));
        }
Example #17
0
        public void WhenWritePassedNumberDurabilityDecreasedByOne()
        {
            Pencil pencil = new Pencil();

            pencil.Write("9");
            Assert.AreEqual(19, pencil.PointDurability);
        }
Example #18
0
 public void WhenAPencilIsSharpenedItReturnsToItsMaxDurability()
 {
     pencil = new Pencil(10, 8);
     paper.AddContent(pencil.Write("12345"));
     pencil.Sharpen();
     Assert.AreEqual(10, pencil.durability);
 }
Example #19
0
        public void WheWritePassedUpperCaseCharCurrentPointDurabilityDecreasesByTwo()
        {
            Pencil pencil = new Pencil();

            pencil.Write("A");
            Assert.AreEqual(18, pencil.PointDurability);
        }
Example #20
0
        public void WhenPencilSharpnessReachesZero_PencilNoLongerWrites()
        {
            pencil = new Pencil(20);

            pencil.Write("A funny thing happened on the way to integration testing.", sheet);
            Assert.AreEqual("A funny thing happened                                   ", sheet.Text);
        }
Example #21
0
        public void WhenThePencilWritesLowercaseLetterThenThePointDurabilityDegradesByOne()
        {
            var pencil = new Pencil(4, 3);

            pencil.Write("a");

            Assert.AreEqual(3, pencil.PointDurability);
        }
Example #22
0
        public void WhenThePencilWritesUppercaseLetterThenThePointDurabilityDegradesByTwo()
        {
            var pencil = new Pencil(4, 3);

            pencil.Write("A");

            Assert.AreEqual(2, pencil.PointDurability);
        }
Example #23
0
        public void WhenthePencilWritestextThenThePointDurabilityDegradesByFour()
        {
            var pencil = new Pencil(4, 3);

            pencil.Write("text");

            Assert.AreEqual(0, pencil.PointDurability);
        }
Example #24
0
        public void WhenPencilWritesPaperStoresWriting()
        {
            Pencil pencil = new Pencil(20, 5);
            Paper  paper  = new Paper();

            pencil.Write("Hello World", paper);
            Assert.AreEqual("Hello World", paper.Text);
        }
Example #25
0
        public void WhenWritePassedFiveCharStringAndPointDurabilityIs4OnlyFirst4CharsWillBeWritten()
        {
            Pencil pencil = new Pencil(5, 4);
            string text   = "chuck";

            pencil.Write(text);
            Assert.AreEqual("chuc ", pencil.Paper);
        }
Example #26
0
        public void WhenWritePassedAdditionalStringItAppendsToExistingText()
        {
            Pencil pencil     = new Pencil(5, 20, 20, "A cat meows");
            string appendText = " a dog barks.";

            pencil.Write(appendText);
            Assert.AreEqual("A cat meows a dog barks.", pencil.Paper);
        }
Example #27
0
        public void WhenThePencilWritesANewLineThenThePointDurabilityRemainsTheSame()
        {
            var pencil = new Pencil(3, 3);

            pencil.Write("\n");

            Assert.AreEqual(3, pencil.PointDurability);
        }
Example #28
0
        public void WhenPencilHasDurabilityOfNegativeOne_ItWritesEverythingAndDoesNotDegrade()
        {
            pencil = new Pencil(-1);

            pencil.Write("A funny thing happened on the way to integration testing.", sheet);
            Assert.AreEqual(-1, pencil.Sharpness);
            Assert.AreEqual("A funny thing happened on the way to integration testing.", sheet.Text);
        }
Example #29
0
        public void WhenWritePassedOneCharStringThatStringIsAppendedToPaper()
        {
            Pencil pencil  = new Pencil();
            string newText = "a";

            pencil.Write(newText);
            Assert.AreEqual("a", pencil.Paper);
        }
Example #30
0
        public void WhenAPencilIsSharpenedItsDurabilityIsReset()
        {
            pencil = new Pencil(10, 8);
            paper.AddContent(pencil.Write("hello"));
            pencil.Sharpen();

            Assert.AreEqual(10, pencil.durability);
        }