Moved Verb to IVerb

This commit is contained in:
Lukasz Baldyga committed 2020-11-15 05:43:04 +00:00
1 parent 73d6f40639
commit e10f2b3d07
22 files changed
+177 -176

No files matched your search

@@ -6,7 +6,7 @@
<members> <members>
<member name="T:Advanced_Software_Engineering_Tests.CommandTester"> <member name="T:Advanced_Software_Engineering_Tests.CommandTester">
<summary> <summary>
The CommandTester class tests the commands possible, mostly by getting a verb and checking it's description.. The CommandTester class tests the commands possible, mostly by getting a IVerb and checking it's description..
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.VerbFactoryTester_Automatic1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.VerbFactoryTester_Automatic1">
@@ -29,107 +29,107 @@
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.MoveToTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.MoveToTester_Manual1">
<summary> <summary>
tests the "move" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.MoveTo" />. tests the "move" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.MoveTo"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.MoveToTester_Manual2"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.MoveToTester_Manual2">
<summary> <summary>
tests the "moveto" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.MoveTo" />. tests the "moveto" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.MoveTo"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.DrawToTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.DrawToTester_Manual1">
<summary> <summary>
tests the "drawto" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.DrawTo" />. tests the "drawto" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.DrawTo"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.DrawToTester_Manual2"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.DrawToTester_Manual2">
<summary> <summary>
tests the "line" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.DrawTo" />. tests the "line" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.DrawTo"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.DrawToTester_Manual3"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.DrawToTester_Manual3">
<summary> <summary>
tests the "lineto" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.DrawTo" />. tests the "lineto" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.DrawTo"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.RegularPolygonTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.RegularPolygonTester_Manual1">
<summary> <summary>
tests the "regularpolygon" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.RegularPolygon" />. tests the "regularpolygon" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.RegularPolygon"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.RegularPolygonTester_Manual2"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.RegularPolygonTester_Manual2">
<summary> <summary>
tests the "rp" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.RegularPolygon" />. tests the "rp" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.RegularPolygon"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.RegularPolygonTester_Manual3"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.RegularPolygonTester_Manual3">
<summary> <summary>
tests the "regularpolygon" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.RegularPolygon" />. tests the "regularpolygon" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.RegularPolygon"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.RegularPolygonTester_Manual4"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.RegularPolygonTester_Manual4">
<summary> <summary>
tests the "rp" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.RegularPolygon" />. tests the "rp" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.RegularPolygon"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.SquareTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.SquareTester_Manual1">
<summary> <summary>
tests the "square" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Square" />. tests the "square" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Square"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.SquareTester_Manual2"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.SquareTester_Manual2">
<summary> <summary>
tests the "square" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Square" />. tests the "square" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Square"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.QuadrilateralTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.QuadrilateralTester_Manual1">
<summary> <summary>
tests the "quadrilateral" command using <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.DrawLines" />. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Quadrilateral" />. tests the "quadrilateral" command using <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.DrawLines"/>. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Quadrilateral"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.CircleTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.CircleTester_Manual1">
<summary> <summary>
Tests the "circle" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Circle" />. Tests the "circle" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Circle"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.TriangleTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.TriangleTester_Manual1">
<summary> <summary>
tests the "triangle" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Triangle" />. tests the "triangle" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Triangle"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.TriangleTester_Manual2"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.TriangleTester_Manual2">
<summary> <summary>
tests the "triangle" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Triangle" />. tests the "triangle" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Triangle"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.DotTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.DotTester_Manual1">
<summary> <summary>
test the "dot" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Dot" />. test the "dot" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Dot"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.ClearTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.ClearTester_Manual1">
<summary> <summary>
tests the "clear" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Circle" />. tests the "clear" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.Circle"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.ResetPenTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.ResetPenTester_Manual1">
<summary> <summary>
Tests the "reset" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.ResetPen" /> Tests the "reset" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.ResetPen"/>
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.ResetPenTester_Manual2"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.ResetPenTester_Manual2">
<summary> <summary>
Tests the "resetpen" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.ResetPen" />. Tests the "resetpen" command. See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.ResetPen"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.PenTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.PenTester_Manual1">
<summary> <summary>
Tests the command "pen". See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.PenColor" /> Tests the command "pen". See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.PenColor"/>
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.FillTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.FillTester_Manual1">
<summary> <summary>
Tests the command "fill". See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.FillColor" />. Tests the command "fill". See <see cref="T:Advanced_Software_Engineering.Verbs.DrawingVerbs.FillColor"/>.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.CommandTester.IfTester_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.CommandTester.IfTester_Manual1">
@@ -165,7 +165,7 @@
</member> </member>
<member name="T:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester"> <member name="T:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester">
<summary> <summary>
This class tests <see cref="T:Advanced_Software_Engineering.SettingsAndHelperFunctions" /> methods. It uses a combination of manual and random tests. This class tests <see cref="T:Advanced_Software_Engineering.SettingsAndHelperFunctions"/> methods. It uses a combination of manual and random tests.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.Strip_Random1"> <member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.Strip_Random1">
@@ -175,73 +175,73 @@
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.Strip_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.Strip_Manual1">
<summary> <summary>
Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.Strip(System.String)" /> test Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.Strip(System.String)"/> test
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.Strip_Manual2"> <member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.Strip_Manual2">
<summary> <summary>
Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.Strip(System.String)" /> test Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.Strip(System.String)"/> test
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.StripStringArray_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.StripStringArray_Manual1">
<summary> <summary>
Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.StripStringArray(System.String[])" /> test. Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.StripStringArray(System.String[])"/> test.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.StripStringArray_Manual2"> <member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.StripStringArray_Manual2">
<summary> <summary>
Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.StripStringArray(System.String[])" /> test. Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.StripStringArray(System.String[])"/> test.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.CommandAndParameterParser_Manual1"> <member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.CommandAndParameterParser_Manual1">
<summary> <summary>
Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.CommandAndParameterParser(System.String)" /> test. Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.CommandAndParameterParser(System.String)"/> test.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.CommandAndParameterParser_Manual2"> <member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.CommandAndParameterParser_Manual2">
<summary> <summary>
Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.CommandAndParameterParser(System.String)" /> test. Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.CommandAndParameterParser(System.String)"/> test.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.CommandAndParameterParser_Manual3"> <member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.CommandAndParameterParser_Manual3">
<summary> <summary>
Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.CommandAndParameterParser(System.String)" /> test. Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.CommandAndParameterParser(System.String)"/> test.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.CommandAndParameterParser_Manual4"> <member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.CommandAndParameterParser_Manual4">
<summary> <summary>
Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.CommandAndParameterParser(System.String)" /> test. Manual <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.CommandAndParameterParser(System.String)"/> test.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.CommandAndParameterParser_Random1"> <member name="M:Advanced_Software_Engineering_Tests.SettingsAndHelperFunctionsTester.CommandAndParameterParser_Random1">
<summary> <summary>
Random <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.CommandAndParameterParser(System.String)" /> test. Random <see cref="M:Advanced_Software_Engineering.SettingsAndHelperFunctions.CommandAndParameterParser(System.String)"/> test.
</summary> </summary>
</member> </member>
<member name="T:Advanced_Software_Engineering_Tests.ValueHelperTester"> <member name="T:Advanced_Software_Engineering_Tests.ValueHelperTester">
<summary> <summary>
This class tests <see cref="T:Advanced_Software_Engineering.Verbs.ValueHelper" /> methods. It uses a combination of manual and random tests. This class tests <see cref="T:Advanced_Software_Engineering.Verbs.ValueHelper"/> methods. It uses a combination of manual and random tests.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.ValueHelperTester.ConvertToInt_Random1"> <member name="M:Advanced_Software_Engineering_Tests.ValueHelperTester.ConvertToInt_Random1">
<summary> <summary>
Random <see cref="M:Advanced_Software_Engineering.Verbs.ValueHelper.ConvertToInt(System.String)" /> test. Random <see cref="M:Advanced_Software_Engineering.Verbs.ValueHelper.ConvertToInt(System.String)"/> test.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.ValueHelperTester.ConvertToDouble_Random1"> <member name="M:Advanced_Software_Engineering_Tests.ValueHelperTester.ConvertToDouble_Random1">
<summary> <summary>
Random <see cref="M:Advanced_Software_Engineering.Verbs.ValueHelper.ConvertToDouble(System.String)" /> test. Random <see cref="M:Advanced_Software_Engineering.Verbs.ValueHelper.ConvertToDouble(System.String)"/> test.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.ValueHelperTester.ConvertToDouble_Random2"> <member name="M:Advanced_Software_Engineering_Tests.ValueHelperTester.ConvertToDouble_Random2">
<summary> <summary>
Random <see cref="M:Advanced_Software_Engineering.Verbs.ValueHelper.ConvertToDouble(System.String)" /> test. Random <see cref="M:Advanced_Software_Engineering.Verbs.ValueHelper.ConvertToDouble(System.String)"/> test.
</summary> </summary>
</member> </member>
<member name="M:Advanced_Software_Engineering_Tests.ValueHelperTester.ConvertToDouble_Random3"> <member name="M:Advanced_Software_Engineering_Tests.ValueHelperTester.ConvertToDouble_Random3">
<summary> <summary>
Random <see cref="M:Advanced_Software_Engineering.Verbs.ValueHelper.ConvertToDouble(System.String)" /> test. Random <see cref="M:Advanced_Software_Engineering.Verbs.ValueHelper.ConvertToDouble(System.String)"/> test.
</summary> </summary>
</member> </member>
</members> </members>
</doc> </doc>
@@ -8,7 +8,7 @@ using System.Drawing;
namespace Advanced_Software_Engineering_Tests { namespace Advanced_Software_Engineering_Tests {
/// <summary> /// <summary>
/// The CommandTester class tests the commands possible, mostly by getting a verb and checking it's description.. /// The CommandTester class tests the commands possible, mostly by getting a IVerb and checking it's description..
/// </summary> /// </summary>
[TestClass] [TestClass]
public class CommandTester { public class CommandTester {
@@ -61,18 +61,18 @@ namespace Advanced_Software_Engineering_Tests {
input += inputParameter + (paramater - 1 != commandParameterNumbers ? ", " : ""); input += inputParameter + (paramater - 1 != commandParameterNumbers ? ", " : "");
} }
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
if (command == "moveto") { if (command == "moveto") {
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Move origin to " + inputParameters[0] + ", " + inputParameters[1]; string correctDesc = "Move origin to " + inputParameters[0] + ", " + inputParameters[1];
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
} else if (command == "drawto" || command == "lineto" || command == "line") { } else if (command == "drawto" || command == "lineto" || command == "line") {
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1]; string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1];
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
} else if (command == "shape") { } else if (command == "shape") {
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc; string correctDesc;
if (commandParameterNumbers == 2) if (commandParameterNumbers == 2)
correctDesc = "Draws a " + inputParameters[0] + " sided regular polygon, with rotation of 0 radians, with inner radius of " + (double)inputParameters[1]; correctDesc = "Draws a " + inputParameters[0] + " sided regular polygon, with rotation of 0 radians, with inner radius of " + (double)inputParameters[1];
@@ -92,9 +92,9 @@ namespace Advanced_Software_Engineering_Tests {
string input = "move 200, 300"; string input = "move 200, 300";
string[] inputParameters = { "200", "300" }; string[] inputParameters = { "200", "300" };
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Move origin to " + inputParameters[0] + ", " + inputParameters[1]; string correctDesc = "Move origin to " + inputParameters[0] + ", " + inputParameters[1];
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
} }
@@ -107,9 +107,9 @@ namespace Advanced_Software_Engineering_Tests {
string input = "moveto 200, 300"; string input = "moveto 200, 300";
string[] inputParameters = { "200", "300" }; string[] inputParameters = { "200", "300" };
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Move origin to " + inputParameters[0] + ", " + inputParameters[1]; string correctDesc = "Move origin to " + inputParameters[0] + ", " + inputParameters[1];
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
} }
@@ -121,8 +121,8 @@ namespace Advanced_Software_Engineering_Tests {
public void DrawToTester_Manual1() { public void DrawToTester_Manual1() {
string input = "drawto 200, 300"; string input = "drawto 200, 300";
string[] inputParameters = { "200", "300" }; string[] inputParameters = { "200", "300" };
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1]; string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1];
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
} }
@@ -134,8 +134,8 @@ namespace Advanced_Software_Engineering_Tests {
public void DrawToTester_Manual2() { public void DrawToTester_Manual2() {
string input = "line 200, 300"; string input = "line 200, 300";
string[] inputParameters = { "200", "300" }; string[] inputParameters = { "200", "300" };
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1]; string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1];
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
} }
@@ -147,8 +147,8 @@ namespace Advanced_Software_Engineering_Tests {
public void DrawToTester_Manual3() { public void DrawToTester_Manual3() {
string input = "lineto 200, 300"; string input = "lineto 200, 300";
string[] inputParameters = { "200", "300" }; string[] inputParameters = { "200", "300" };
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1]; string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1];
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
} }
@@ -160,9 +160,9 @@ namespace Advanced_Software_Engineering_Tests {
public void RegularPolygonTester_Manual1() { public void RegularPolygonTester_Manual1() {
string input = "regularpolygon 3, 50"; string input = "regularpolygon 3, 50";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
int sides = 3; int sides = 3;
double scale = 50; double scale = 50;
@@ -179,9 +179,9 @@ namespace Advanced_Software_Engineering_Tests {
public void RegularPolygonTester_Manual2() { public void RegularPolygonTester_Manual2() {
string input = "rp 3, 50"; string input = "rp 3, 50";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
int sides = 3; int sides = 3;
double scale = 50; double scale = 50;
@@ -198,9 +198,9 @@ namespace Advanced_Software_Engineering_Tests {
public void RegularPolygonTester_Manual3() { public void RegularPolygonTester_Manual3() {
string input = "regularpolygon 3, 50, 25"; string input = "regularpolygon 3, 50, 25";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
int sides = 3; int sides = 3;
double scale = 50; double scale = 50;
@@ -217,9 +217,9 @@ namespace Advanced_Software_Engineering_Tests {
public void RegularPolygonTester_Manual4() { public void RegularPolygonTester_Manual4() {
string input = "rp 3, 50, 25"; string input = "rp 3, 50, 25";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
int sides = 3; int sides = 3;
double scale = 50; double scale = 50;
@@ -236,9 +236,9 @@ namespace Advanced_Software_Engineering_Tests {
public void SquareTester_Manual1() { public void SquareTester_Manual1() {
string input = "square 500"; string input = "square 500";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
int sides = 4; int sides = 4;
double scale = 500; double scale = 500;
@@ -255,9 +255,9 @@ namespace Advanced_Software_Engineering_Tests {
public void SquareTester_Manual2() { public void SquareTester_Manual2() {
string input = "square 500, 45"; string input = "square 500, 45";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
int sides = 4; int sides = 4;
double scale = 500; double scale = 500;
@@ -280,9 +280,9 @@ namespace Advanced_Software_Engineering_Tests {
new Point(7, 8) new Point(7, 8)
}; };
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = new DrawLines(null, points).GetDescription(); string correctDesc = new DrawLines(null, points).GetDescription();
Assert.AreEqual(verbDesc, correctDesc); Assert.AreEqual(verbDesc, correctDesc);
@@ -295,9 +295,9 @@ namespace Advanced_Software_Engineering_Tests {
public void CircleTester_Manual1() { public void CircleTester_Manual1() {
string input = "circle 100"; string input = "circle 100";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Draws a circle radius " + 100d.ToString() + ", with origin of the pen"; string correctDesc = "Draws a circle radius " + 100d.ToString() + ", with origin of the pen";
@@ -311,9 +311,9 @@ namespace Advanced_Software_Engineering_Tests {
public void TriangleTester_Manual1() { public void TriangleTester_Manual1() {
string input = "triangle 500"; string input = "triangle 500";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
int sides = 3; int sides = 3;
double scale = 500; double scale = 500;
@@ -330,9 +330,9 @@ namespace Advanced_Software_Engineering_Tests {
public void TriangleTester_Manual2() { public void TriangleTester_Manual2() {
string input = "triangle 500, 45"; string input = "triangle 500, 45";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
int sides = 3; int sides = 3;
double scale = 500; double scale = 500;
@@ -349,8 +349,8 @@ namespace Advanced_Software_Engineering_Tests {
public void DotTester_Manual1() { public void DotTester_Manual1() {
string input = "dot"; string input = "dot";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Places a dot where the pen currently is"; string correctDesc = "Places a dot where the pen currently is";
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
@@ -362,8 +362,8 @@ namespace Advanced_Software_Engineering_Tests {
[TestMethod] [TestMethod]
public void ClearTester_Manual1() { public void ClearTester_Manual1() {
string input = "clear"; string input = "clear";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Clears the canvas"; string correctDesc = "Clears the canvas";
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
@@ -375,8 +375,8 @@ namespace Advanced_Software_Engineering_Tests {
[TestMethod] [TestMethod]
public void ResetPenTester_Manual1() { public void ResetPenTester_Manual1() {
string input = "reset"; string input = "reset";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Moves pen to the start (0, 0)"; string correctDesc = "Moves pen to the start (0, 0)";
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
@@ -388,8 +388,8 @@ namespace Advanced_Software_Engineering_Tests {
[TestMethod] [TestMethod]
public void ResetPenTester_Manual2() { public void ResetPenTester_Manual2() {
string input = "resetpen"; string input = "resetpen";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Moves pen to the start (0, 0)"; string correctDesc = "Moves pen to the start (0, 0)";
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
@@ -401,8 +401,8 @@ namespace Advanced_Software_Engineering_Tests {
[TestMethod] [TestMethod]
public void PenTester_Manual1() { public void PenTester_Manual1() {
string input = "pen red"; string input = "pen red";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Set pen color to: Color [Red]"; string correctDesc = "Set pen color to: Color [Red]";
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
@@ -414,8 +414,8 @@ namespace Advanced_Software_Engineering_Tests {
[TestMethod] [TestMethod]
public void FillTester_Manual1() { public void FillTester_Manual1() {
string input = "fill pink"; string input = "fill pink";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Set fill color to: Color [Pink]"; string correctDesc = "Set fill color to: Color [Pink]";
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
@@ -428,8 +428,8 @@ namespace Advanced_Software_Engineering_Tests {
public void IfTester_Manual1() { public void IfTester_Manual1() {
string input = "if i == 10"; string input = "if i == 10";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Tests if variable 'i' is equal to 10"; string correctDesc = "Tests if variable 'i' is equal to 10";
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
@@ -442,8 +442,8 @@ namespace Advanced_Software_Engineering_Tests {
public void MethodTester_Manual1() { public void MethodTester_Manual1() {
string input = "def duck, int i"; string input = "def duck, int i";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Create a new method called 'duck' with input 'int i'. The method: "; string correctDesc = "Create a new method called 'duck' with input 'int i'. The method: ";
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
@@ -456,8 +456,8 @@ namespace Advanced_Software_Engineering_Tests {
public void ValueTester_Manual1() { public void ValueTester_Manual1() {
string input = "int i = 10"; string input = "int i = 10";
Verb verb = VerbFactory.MakeVerb(null, input); IVerb IVerb = VerbFactory.MakeVerb(null, input);
string verbDesc = verb.GetDescription(); string verbDesc = IVerb.GetDescription();
string correctDesc = "Declares and sets integer 'i' to '10'"; string correctDesc = "Declares and sets integer 'i' to '10'";
Assert.AreEqual(correctDesc, verbDesc); Assert.AreEqual(correctDesc, verbDesc);
@@ -89,8 +89,9 @@
<Compile Include="Verbs\DrawingVerbs\ResetPen.cs" /> <Compile Include="Verbs\DrawingVerbs\ResetPen.cs" />
<Compile Include="Verbs\DrawingVerbs\Square.cs" /> <Compile Include="Verbs\DrawingVerbs\Square.cs" />
<Compile Include="Verbs\DrawingVerbs\Triangle.cs" /> <Compile Include="Verbs\DrawingVerbs\Triangle.cs" />
<Compile Include="Verbs\IValue.cs" />
<Compile Include="Verbs\ValueHelper.cs" /> <Compile Include="Verbs\ValueHelper.cs" />
<Compile Include="Verbs\Verb.cs" /> <Compile Include="Verbs\IVerb.cs" />
<Compile Include="Windows\AboutWindow.cs"> <Compile Include="Windows\AboutWindow.cs">
<SubType>Form</SubType> <SubType>Form</SubType>
</Compile> </Compile>
@@ -9,7 +9,7 @@ namespace Advanced_Software_Engineering {
/// </summary> /// </summary>
public class Commander { public class Commander {
private Graphics graphics; private Graphics graphics;
private List<Verb> commands = new List<Verb>(); private List<IVerb> commands = new List<IVerb>();
private Drawer drawer; private Drawer drawer;
private bool commands_ok = true; private bool commands_ok = true;
@@ -22,8 +22,8 @@ namespace Advanced_Software_Engineering {
drawer.ResetDrawer(); drawer.ResetDrawer();
drawer.SetGraphics(updateGraphicsElement); drawer.SetGraphics(updateGraphicsElement);
foreach (Verb verb in this.commands) { foreach (IVerb IVerb in this.commands) {
verb.ExecuteVerb(); IVerb.ExecuteVerb();
} }
} }
@@ -58,10 +58,10 @@ namespace Advanced_Software_Engineering {
} }
/// <summary> /// <summary>
/// Adds a verb to the command list to be executed. /// Adds a IVerb to the command list to be executed.
/// </summary> /// </summary>
/// <param name="command">Verb to be added. <seealso cref="Verb"/></param> /// <param name="command">IVerb to be added. <seealso cref="IVerb"/></param>
public void AddCommand(Verb command) { public void AddCommand(IVerb command) {
commands.Add(command); commands.Add(command);
} }
@@ -108,8 +108,8 @@ namespace Advanced_Software_Engineering {
Console.WriteLine("\n\nHere is what the program is going to do:"); Console.WriteLine("\n\nHere is what the program is going to do:");
Console.WriteLine("Set origin to 0, 0"); Console.WriteLine("Set origin to 0, 0");
foreach (Verb verb in this.commands) { foreach (IVerb IVerb in this.commands) {
Console.WriteLine(verb.GetDescription()); Console.WriteLine(IVerb.GetDescription());
} }
} }
@@ -131,7 +131,7 @@ namespace Advanced_Software_Engineering {
/// Removes all commands from the Commander and resets the drawer. /// Removes all commands from the Commander and resets the drawer.
/// </summary> /// </summary>
public void RemoveAllCommands() { public void RemoveAllCommands() {
commands = new List<Verb>(); commands = new List<IVerb>();
drawer.ResetDrawer(); drawer.ResetDrawer();
} }
@@ -141,7 +141,7 @@ namespace Advanced_Software_Engineering {
/// <returns>Explanation of all the commands</returns> /// <returns>Explanation of all the commands</returns>
public string ExplainCommands() { public string ExplainCommands() {
string desc = ""; string desc = "";
foreach (Verb command in commands) { foreach (IVerb command in commands) {
desc += command.GetDescription() + Environment.NewLine; desc += command.GetDescription() + Environment.NewLine;
} }
return desc; return desc;
@@ -1,14 +1,14 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// Circle Verb class. /// Circle IVerb class.
/// </summary> /// </summary>
public class Circle : Verb { public class Circle : IVerb {
private Drawer drawer; private Drawer drawer;
private double scale; private double scale;
/// <summary> /// <summary>
/// Circle constructor creates the Circle verb. /// Circle constructor creates the Circle IVerb.
/// </summary> /// </summary>
/// <param name="drawer">drawer</param> /// <param name="drawer">drawer</param>
/// <param name="scale">scale of the circle</param> /// <param name="scale">scale of the circle</param>
@@ -18,7 +18,7 @@
} }
/// <summary> /// <summary>
/// Execute the Circle verb, which is to draw a circle with the drawer. /// Execute the Circle IVerb, which is to draw a circle with the drawer.
/// </summary> /// </summary>
public void ExecuteVerb() { public void ExecuteVerb() {
drawer.DrawCircle(scale); drawer.DrawCircle(scale);
@@ -1,13 +1,13 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// The Clear Verb class. /// The Clear IVerb class.
/// </summary> /// </summary>
public class Clear : Verb { public class Clear : IVerb {
private Drawer drawer; private Drawer drawer;
/// <summary> /// <summary>
/// Create the clear Verb /// Create the clear IVerb
/// </summary> /// </summary>
/// <param name="drawer"></param> /// <param name="drawer"></param>
public Clear(Drawer drawer) { public Clear(Drawer drawer) {
@@ -15,7 +15,7 @@
} }
/// <summary> /// <summary>
/// Execute the clear verb. It clears the drawer. /// Execute the clear IVerb. It clears the drawer.
/// </summary> /// </summary>
public void ExecuteVerb() => drawer.ClearCanvas(); public void ExecuteVerb() => drawer.ClearCanvas();
@@ -1,13 +1,13 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// The Dot Verb class /// The Dot IVerb class
/// </summary> /// </summary>
public class Dot : Verb { public class Dot : IVerb {
private Drawer drawer; private Drawer drawer;
/// <summary> /// <summary>
/// Creates the Dot Verb /// Creates the Dot IVerb
/// </summary> /// </summary>
/// <param name="drawer"></param> /// <param name="drawer"></param>
public Dot(Drawer drawer) { public Dot(Drawer drawer) {
@@ -3,9 +3,9 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// DrawLines Verb class /// DrawLines IVerb class
/// </summary> /// </summary>
public class DrawLines : Verb { public class DrawLines : IVerb {
private Drawer drawer; private Drawer drawer;
private Point[] points; private Point[] points;
@@ -3,9 +3,9 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// DrawTo Verb class /// DrawTo IVerb class
/// </summary> /// </summary>
public class DrawTo : Verb { public class DrawTo : IVerb {
private Drawer drawer; private Drawer drawer;
private Point moveToPoint; private Point moveToPoint;
@@ -1,9 +1,9 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// Fill Verb class /// Fill IVerb class
/// </summary> /// </summary>
public class Fill : Verb { public class Fill : IVerb {
private Drawer drawer; private Drawer drawer;
private bool enable; private bool enable;
@@ -28,7 +28,7 @@
/// <summary> /// <summary>
/// Describes what the command will do /// Describes what the command will do
/// </summary> /// </summary>
/// <returns>Description of what the verb will do</returns> /// <returns>Description of what the IVerb will do</returns>
public string GetDescription() { public string GetDescription() {
if (enable) return "Enable fill"; if (enable) return "Enable fill";
else return "Disable fill"; else return "Disable fill";
@@ -3,9 +3,9 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// The FillColor Verb class /// The FillColor IVerb class
/// </summary> /// </summary>
public class FillColor : Verb { public class FillColor : IVerb {
private Drawer drawer; private Drawer drawer;
private Color color; private Color color;
@@ -3,9 +3,9 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// MoveTo Verb class /// MoveTo IVerb class
/// </summary> /// </summary>
public class MoveTo : Verb { public class MoveTo : IVerb {
private Drawer drawer; private Drawer drawer;
private Point moveToPoint; private Point moveToPoint;
@@ -3,9 +3,9 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// The PenColor Verb class /// The PenColor IVerb class
/// </summary> /// </summary>
public class PenColor : Verb { public class PenColor : IVerb {
private Drawer drawer; private Drawer drawer;
private Color color; private Color color;
@@ -3,10 +3,10 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// The Quadrilateral Verb class /// The Quadrilateral IVerb class
/// </summary> /// </summary>
public class Quadrilateral : Verb { public class Quadrilateral : IVerb {
private Verb verb; private IVerb IVerb;
/// <summary> /// <summary>
/// Creates a Quadrilateral instances /// Creates a Quadrilateral instances
@@ -17,18 +17,18 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <param name="point3">third point</param> /// <param name="point3">third point</param>
/// <param name="point4">fourth point</param> /// <param name="point4">fourth point</param>
public Quadrilateral(Drawer drawer, Point point1, Point point2, Point point3, Point point4) { public Quadrilateral(Drawer drawer, Point point1, Point point2, Point point3, Point point4) {
verb = new DrawLines(drawer, new Point[] { point1, point2, point3, point4 }); IVerb = new DrawLines(drawer, new Point[] { point1, point2, point3, point4 });
} }
/// <summary> /// <summary>
/// Draws a quadrilateral from the points /// Draws a quadrilateral from the points
/// </summary> /// </summary>
public void ExecuteVerb() => verb.ExecuteVerb(); public void ExecuteVerb() => IVerb.ExecuteVerb();
/// <summary> /// <summary>
/// Describes all of the points /// Describes all of the points
/// </summary> /// </summary>
/// <returns>Description of the quadrilateral points</returns> /// <returns>Description of the quadrilateral points</returns>
public string GetDescription() => verb.GetDescription(); public string GetDescription() => IVerb.GetDescription();
} }
} }
@@ -5,12 +5,12 @@ using System.Drawing;
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// Rectangle Verb class /// Rectangle IVerb class
/// </summary> /// </summary>
/// <todo> /// <todo>
/// Correct /// Correct
/// </todo> /// </todo>
public class Rectangle : Verb { public class Rectangle : IVerb {
private Drawer drawer; private Drawer drawer;
private PointF[] points; private PointF[] points;
@@ -5,9 +5,9 @@ using System.Drawing;
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// A class that generates a RegularPolygon verb. /// A class that generates a RegularPolygon IVerb.
/// </summary> /// </summary>
public class RegularPolygon : Verb { public class RegularPolygon : IVerb {
private Drawer drawer; private Drawer drawer;
private int sides; private int sides;
private double scale; private double scale;
@@ -3,11 +3,11 @@
/// <summary> /// <summary>
/// Setsets the pen to the initial position. /// Setsets the pen to the initial position.
/// </summary> /// </summary>
public class ResetPen : Verb { public class ResetPen : IVerb {
private Drawer drawer; private Drawer drawer;
/// <summary> /// <summary>
/// Creates the ResetPen verb /// Creates the ResetPen IVerb
/// </summary> /// </summary>
/// <param name="drawer">drawer</param> /// <param name="drawer">drawer</param>
public ResetPen(Drawer drawer) { public ResetPen(Drawer drawer) {
@@ -1,10 +1,10 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// The Square Verb class /// The Square IVerb class
/// </summary> /// </summary>
public class Square : Verb { public class Square : IVerb {
private Verb verb; private IVerb IVerb;
/// <summary> /// <summary>
/// A new Squre instance. Draws squares using <see cref="RegularPolygon"/> /// A new Squre instance. Draws squares using <see cref="RegularPolygon"/>
@@ -12,7 +12,7 @@
/// <param name="drawer">drawer</param> /// <param name="drawer">drawer</param>
/// <param name="scale">size of the square</param> /// <param name="scale">size of the square</param>
public Square(Drawer drawer, double scale) { public Square(Drawer drawer, double scale) {
verb = new RegularPolygon(drawer, 4, scale); IVerb = new RegularPolygon(drawer, 4, scale);
} }
/// <summary> /// <summary>
@@ -22,18 +22,18 @@
/// <param name="scale">size of the square</param> /// <param name="scale">size of the square</param>
/// <param name="offset">rotation offset in degrees</param> /// <param name="offset">rotation offset in degrees</param>
public Square(Drawer drawer, double scale, double offset) { public Square(Drawer drawer, double scale, double offset) {
verb = new RegularPolygon(drawer, 4, scale, offset); IVerb = new RegularPolygon(drawer, 4, scale, offset);
} }
/// <summary> /// <summary>
/// Draws the regular polygon (square) /// Draws the regular polygon (square)
/// </summary> /// </summary>
public void ExecuteVerb() => verb.ExecuteVerb(); public void ExecuteVerb() => IVerb.ExecuteVerb();
/// <summary> /// <summary>
/// Gets description of how it will draw the regular polygon (square) /// Gets description of how it will draw the regular polygon (square)
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
public string GetDescription() => verb.GetDescription(); public string GetDescription() => IVerb.GetDescription();
} }
} }
@@ -3,10 +3,10 @@
namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <summary> /// <summary>
/// The Triangle Verb class /// The Triangle IVerb class
/// </summary> /// </summary>
public class Triangle : Verb { public class Triangle : IVerb {
private Verb verb; private IVerb IVerb;
/// <summary> /// <summary>
/// Creates a new Triangle instance using <see cref="RegularPolygon"/>. /// Creates a new Triangle instance using <see cref="RegularPolygon"/>.
@@ -14,7 +14,7 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <param name="drawer">drawer</param> /// <param name="drawer">drawer</param>
/// <param name="scale">the scale of the triangle</param> /// <param name="scale">the scale of the triangle</param>
public Triangle(Drawer drawer, double scale) { public Triangle(Drawer drawer, double scale) {
verb = new RegularPolygon(drawer, 3, scale); IVerb = new RegularPolygon(drawer, 3, scale);
} }
/// <summary> /// <summary>
@@ -24,7 +24,7 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <param name="scale">the scale of the triangle</param> /// <param name="scale">the scale of the triangle</param>
/// <param name="offset">the offset of the triangle in degrees</param> /// <param name="offset">the offset of the triangle in degrees</param>
public Triangle(Drawer drawer, double scale, double offset) { public Triangle(Drawer drawer, double scale, double offset) {
verb = new RegularPolygon(drawer, 3, scale, offset); IVerb = new RegularPolygon(drawer, 3, scale, offset);
} }
/// <summary> /// <summary>
@@ -35,18 +35,18 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs {
/// <param name="point2">second point</param> /// <param name="point2">second point</param>
/// <param name="point3">third point</param> /// <param name="point3">third point</param>
public Triangle(Drawer drawer, Point point1, Point point2, Point point3) { public Triangle(Drawer drawer, Point point1, Point point2, Point point3) {
verb = new DrawLines(drawer, new Point[] { point1, point2, point3 }); IVerb = new DrawLines(drawer, new Point[] { point1, point2, point3 });
} }
/// <summary> /// <summary>
/// Executes the created verb, either <see cref="RegularPolygon"/> or <see cref="DrawLines"/>. /// Executes the created IVerb, either <see cref="RegularPolygon"/> or <see cref="DrawLines"/>.
/// </summary> /// </summary>
public void ExecuteVerb() => verb.ExecuteVerb(); public void ExecuteVerb() => IVerb.ExecuteVerb();
/// <summary> /// <summary>
/// Describes how the triangle will be drawn /// Describes how the triangle will be drawn
/// </summary> /// </summary>
/// <returns>Description of how the triangle will be drawn</returns> /// <returns>Description of how the triangle will be drawn</returns>
public string GetDescription() => verb.GetDescription(); public string GetDescription() => IVerb.GetDescription();
} }
} }
@@ -0,0 +1,19 @@
namespace Advanced_Software_Engineering {
/// <summary>
/// IVerb is an interface for executing and getting the descriptions of Verbs. Some Verbs draw lines, some verbs will assign
/// </summary>
public interface IVerb {
/// <summary>
/// This executes the IVerb to the drawer inside it.
/// </summary>
void ExecuteVerb();
/// <summary>
/// The description of what the IVerb will do.
/// </summary>
/// <returns>A string description of what the IVerb will do</returns>
string GetDescription();
}
}
@@ -1,19 +0,0 @@
namespace Advanced_Software_Engineering {
/// <summary>
/// Verb is an interface for executing and getting the descriptions of Verbs. Some Verbs draw lines, some verbs will assign
/// </summary>
public interface Verb {
/// <summary>
/// This executes the verb to the drawer inside it.
/// </summary>
void ExecuteVerb();
/// <summary>
/// The description of what the Verb will do.
/// </summary>
/// <returns>A string description of what the Verb will do</returns>
string GetDescription();
}
}
@@ -12,15 +12,15 @@ namespace Advanced_Software_Engineering {
public class VerbFactory { public class VerbFactory {
/// <summary> /// <summary>
/// This function returns a Verb from a command and drawer. /// This function returns a IVerb from a command and drawer.
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// This factory is specifically useful since it automatically converts the parameters to what they should be. /// This factory is specifically useful since it automatically converts the parameters to what they should be.
/// </remarks> /// </remarks>
/// <param name="drawer">The drawer to affect</param> /// <param name="drawer">The drawer to affect</param>
/// <param name="fullCommand">The command as a string</param> /// <param name="fullCommand">The command as a string</param>
/// <returns>A verb that maches the command</returns> /// <returns>A IVerb that maches the command</returns>
public static Verb MakeVerb(Drawer drawer, string fullCommand) { public static IVerb MakeVerb(Drawer drawer, string fullCommand) {
Dictionary<string, string[]> commandAndParameters = SettingsAndHelperFunctions.CommandAndParameterParser(fullCommand); Dictionary<string, string[]> commandAndParameters = SettingsAndHelperFunctions.CommandAndParameterParser(fullCommand);
if (!commandAndParameters.Keys.Contains("command")) throw new Exception("There is no command to process"); if (!commandAndParameters.Keys.Contains("command")) throw new Exception("There is no command to process");