diff --git a/Advanced Software Engineering/Advanced Software Engineering Tests/Advanced Software Engineering Tests.xml b/Advanced Software Engineering/Advanced Software Engineering Tests/Advanced Software Engineering Tests.xml
new file mode 100644
index 0000000..985114a
--- /dev/null
+++ b/Advanced Software Engineering/Advanced Software Engineering Tests/Advanced Software Engineering Tests.xml
@@ -0,0 +1,127 @@
+
+
+
+ Advanced Software Engineering Tests
+
+
+
+
+ The CommandTester class tests the commands possible, mostly by getting a verb and checking it's description..
+
+
+
+
+ Automatically tests:
+ - moveto
+ - drawto
+ - line
+ - shape
+ Current todo list:
+ - square
+ - rectangle
+ - circle
+ - triangle
+ - dot
+ - clear
+ - pen
+ - fill
+
+
+
+
+ tests the "move" command. See .
+
+
+
+
+ tests the "moveto" command. See .
+
+
+
+
+ tests the "drawto" command. See .
+
+
+
+
+ tests the "line" command. See .
+
+
+
+
+ tests the "lineto" command. See .
+
+
+
+
+ tests the "regularpolygon" command. See .
+
+
+
+
+ tests the "rp" command. See .
+
+
+
+
+ tests the "regularpolygon" command. See .
+
+
+
+
+ tests the "rp" command. See .
+
+
+
+
+ tests the "square" command. See .
+
+
+
+
+ tests the "square" command. See .
+
+
+
+
+ tests the "quadrilateral" command using . See .
+
+
+
+
+ tests the "triangle" command. See .
+
+
+
+
+ tests the "triangle" command. See .
+
+
+
+
+ test the "dot" command. See .
+
+
+
+
+ tests the
+
+
+
+
+ A strongly-typed resource class, for looking up localized strings, etc.
+
+
+
+
+ Returns the cached ResourceManager instance used by this class.
+
+
+
+
+ Overrides the current thread's CurrentUICulture property for all
+ resource lookups using this strongly typed resource class.
+
+
+
+
diff --git a/Advanced Software Engineering/Advanced Software Engineering Tests/CommandTester.cs b/Advanced Software Engineering/Advanced Software Engineering Tests/CommandTester.cs
index 671799e..88b2f93 100644
--- a/Advanced Software Engineering/Advanced Software Engineering Tests/CommandTester.cs
+++ b/Advanced Software Engineering/Advanced Software Engineering Tests/CommandTester.cs
@@ -1,14 +1,35 @@
using System;
using System.Collections.Generic;
+using System.Drawing;
using System.Text;
using Advanced_Software_Engineering;
+using Advanced_Software_Engineering.Verbs.DrawingVerbs;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace Advanced_Software_Engineering_Tests {
+ ///
+ /// The CommandTester class tests the commands possible, mostly by getting a verb and checking it's description..
+ ///
[TestClass]
public class CommandTester {
Random rand = new Random();
+ ///
+ /// Automatically tests:
+ /// - moveto
+ /// - drawto
+ /// - line
+ /// - rp
+ /// Current todo list:
+ /// - square
+ /// - rectangle
+ /// - circle
+ /// - triangle
+ /// - dot
+ /// - clear
+ /// - pen
+ /// - fill
+ ///
[TestMethod]
public void VerbFactoryTester_Automatic1() {
Dictionary commandParamaterNumber = new Dictionary
@@ -17,16 +38,16 @@ namespace Advanced_Software_Engineering_Tests {
{"drawto", new int[] { 2 } },
{"line", new int[] { 2 } },
{"lineto", new int[] { 2 } },
- {"shape", new int[] { 2, 3 } },
-
+ {"rp", new int[] { 2, 3 } },
+ //todo:
{"square", new int[] { 1, 2, 8 } },
{"rectangle", new int[] { 1, 2, 6 } },
{"circle", new int[] { 1 } },
{"triangle", new int[] { 1, 2 } },
{"dot", new int[] { 0 } },
{"clear", new int[] { 0 } },
- {"pen", new int[] {1, 3 } },
- {"fill", new int[] {1, 3 } }
+ {"pen", new int[] { 1, 3 } },
+ {"fill", new int[] { 1, 3 } }
};
foreach (string command in commandParamaterNumber.Keys) {
@@ -66,6 +87,9 @@ namespace Advanced_Software_Engineering_Tests {
}
+ ///
+ /// tests the "move" command. See .
+ ///
[TestMethod]
public void MoveToTester_Manual1() {
string input = "move 200, 300";
@@ -78,6 +102,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "moveto" command. See .
+ ///
[TestMethod]
public void MoveToTester_Manual2() {
string input = "moveto 200, 300";
@@ -90,6 +117,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "drawto" command. See .
+ ///
[TestMethod]
public void DrawToTester_Manual1() {
string input = "drawto 200, 300";
@@ -100,6 +130,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "line" command. See .
+ ///
[TestMethod]
public void DrawToTester_Manual2() {
string input = "line 200, 300";
@@ -110,6 +143,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "lineto" command. See .
+ ///
[TestMethod]
public void DrawToTester_Manual3() {
string input = "lineto 200, 300";
@@ -120,6 +156,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "regularpolygon" command. See .
+ ///
[TestMethod]
public void RegularPolygonTester_Manual1() {
string input = "regularpolygon 3, 50";
@@ -136,6 +175,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "rp" command. See .
+ ///
[TestMethod]
public void RegularPolygonTester_Manual2() {
string input = "rp 3, 50";
@@ -152,6 +194,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "regularpolygon" command. See .
+ ///
[TestMethod]
public void RegularPolygonTester_Manual3() {
string input = "regularpolygon 3, 50, 25";
@@ -168,6 +213,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "rp" command. See .
+ ///
[TestMethod]
public void RegularPolygonTester_Manual4() {
string input = "rp 3, 50, 25";
@@ -184,6 +232,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "square" command. See .
+ ///
[TestMethod]
public void SquareTester_Manual1() {
string input = "square 500";
@@ -200,6 +251,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "square" command. See .
+ ///
[TestMethod]
public void SquareTester_Manual2() {
string input = "square 500, 45";
@@ -216,6 +270,46 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "quadrilateral" command using . See .
+ ///
+ [TestMethod]
+ public void QuadrilateralTester_Manual1() {
+ string input = "quadrilateral 1, 2, 3, 4, 5, 6, 7, 8";
+ Point[] points = {
+ new Point(1, 2),
+ new Point(3, 4),
+ new Point(5, 6),
+ new Point(7, 8)
+ };
+
+ Verb verb = VerbFactory.MakeVerb(null, input);
+
+ string verbDesc = verb.GetDescription();
+ string correctDesc = new DrawLines(null, points).GetDescription();
+
+ Assert.AreEqual(verbDesc, correctDesc);
+ }
+
+ ///
+ /// Tests the "circle" command. See .
+ ///
+ [TestMethod]
+ public void CircleTester_Manual1() {
+ string input = "circle 100";
+
+ Verb verb = VerbFactory.MakeVerb(null, input);
+
+ string verbDesc = verb.GetDescription();
+
+ string correctDesc = "Draws a circle radius " + 100d.ToString() + ", with origin of the pen";
+
+ Assert.AreEqual(correctDesc, verbDesc);
+ }
+
+ ///
+ /// tests the "triangle" command. See .
+ ///
[TestMethod]
public void TriangleTester_Manual1() {
string input = "triangle 500";
@@ -232,6 +326,9 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "triangle" command. See .
+ ///
[TestMethod]
public void TriangleTester_Manual2() {
string input = "triangle 500, 45";
@@ -248,90 +345,123 @@ namespace Advanced_Software_Engineering_Tests {
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// test the "dot" command. See .
+ ///
[TestMethod]
public void DotTester_Manual1() {
string input = "dot";
Verb verb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription();
- string correctDesc = "Dots the pen at pen position"; //undecided
+ string correctDesc = "Places a dot where the pen currently is";
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// tests the "clear" command. See .
+ ///
[TestMethod]
public void ClearTester_Manual1() {
- string input = "";
- string[] inputParameters = { };
+ string input = "clear";
Verb verb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription();
- string correctDesc = null; //undecided
+ string correctDesc = "Clears the canvas";
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// Tests the "reset" command. See
+ ///
[TestMethod]
- public void ResetTester_Manual1() {
- string input = "";
- string[] inputParameters = { };
+ public void ResetPenTester_Manual1() {
+ string input = "reset";
Verb verb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription();
- string correctDesc = null; //undecided
+ string correctDesc = "Moves pen to the start (0, 0)";
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// Tests the "resetpen" command. See .
+ ///
+ [TestMethod]
+ public void ResetPenTester_Manual2() {
+ string input = "resetpen";
+ Verb verb = VerbFactory.MakeVerb(null, input);
+ string verbDesc = verb.GetDescription();
+ string correctDesc = "Moves pen to the start (0, 0)";
+
+ Assert.AreEqual(correctDesc, verbDesc);
+ }
+
+ ///
+ /// Tests the command "pen". See
+ ///
[TestMethod]
public void PenTester_Manual1() {
- string input = "";
- string[] inputParameters = { };
+ string input = "pen red";
Verb verb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription();
- string correctDesc = null; //undecided
+ string correctDesc = "Set pen color to: red";
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// Tests the command "fill". See .
+ ///
[TestMethod]
public void FillTester_Manual1() {
- string input = "";
- string[] inputParameters = { };
+ string input = "fill pink";
Verb verb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription();
- string correctDesc = null; //undecided
+ string correctDesc = "Set fill color to: pink";
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// Tests the "if" command. It hasn't been implemented yet.
+ ///
[TestMethod]
public void IfTester_Manual1() {
- string input = "";
- string[] inputParameters = { };
+ string input = "if i == 10";
+
Verb verb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription();
- string correctDesc = null; //undecided
+ string correctDesc = "Tests if variable 'i' is equal to 10";
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// Tests the "def" command. It hasn't been implemented yet.
+ ///
[TestMethod]
public void MethodTester_Manual1() {
- string input = "";
- string[] inputParameters = { };
+ string input = "def duck, int i";
+
Verb verb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription();
- string correctDesc = "Create a new method";
+ string correctDesc = "Create a new method called 'duck' with input 'int i'. The method: ";
Assert.AreEqual(correctDesc, verbDesc);
}
+ ///
+ /// Tests the "int" declaration and assignment. It hasn't been implemented yet.
+ ///
[TestMethod]
public void ValueTester_Manual1() {
- string input = "";
- string[] inputParameters = { };
+ string input = "int i = 10";
+
Verb verb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription();
- string correctDesc = null; //undecided
+ string correctDesc = "Declares and sets integer 'i' to '10'";
Assert.AreEqual(correctDesc, verbDesc);
}