summaryrefslogtreecommitdiff
path: root/dsa/NUnitTestProject1
diff options
context:
space:
mode:
authoruzvkl <dennis.kobert@student.kit.edu>2019-06-11 23:05:52 +0200
committeruzvkl <dennis.kobert@student.kit.edu>2019-06-11 23:05:52 +0200
commite6181c24124d97f2fbc932b8a68311e625463156 (patch)
treec1f097c344ca266b7941c9668590b0fd35c7870a /dsa/NUnitTestProject1
parent2490ad5d31fe2ac778ff9303776f0e91f47a2862 (diff)
Move dsa related stuff to subfolder
Diffstat (limited to 'dsa/NUnitTestProject1')
-rw-r--r--dsa/NUnitTestProject1/Auxiliary/Calculator/ArgumentTests.cs59
-rw-r--r--dsa/NUnitTestProject1/Auxiliary/Calculator/StringSolverTests.cs105
-rw-r--r--dsa/NUnitTestProject1/Auxiliary/DiceTests.cs71
-rw-r--r--dsa/NUnitTestProject1/NUnitTest.csproj20
4 files changed, 255 insertions, 0 deletions
diff --git a/dsa/NUnitTestProject1/Auxiliary/Calculator/ArgumentTests.cs b/dsa/NUnitTestProject1/Auxiliary/Calculator/ArgumentTests.cs
new file mode 100644
index 0000000..3e8dbeb
--- /dev/null
+++ b/dsa/NUnitTestProject1/Auxiliary/Calculator/ArgumentTests.cs
@@ -0,0 +1,59 @@
+using DSALib.Auxiliary.Calculator;
+using Moq;
+using NUnit.Framework;
+
+namespace NUnitTest.Auxiliary.Calculator
+{
+ [TestFixture]
+ public class ArgumentTests
+ {
+ private MockRepository mockRepository;
+
+
+
+ [SetUp]
+ public void SetUp()
+ {
+ this.mockRepository = new MockRepository(MockBehavior.Strict);
+
+
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ this.mockRepository.VerifyAll();
+ }
+
+ private Argument CreateArgument()
+ {
+ return new Argument("3");
+ }
+
+ [Test]
+ public void Solve_StateUnderTest_ExpectedBehavior()
+ {
+ // Arrange
+ var unitUnderTest = this.CreateArgument();
+
+ // Act
+ var result = unitUnderTest.Solve();
+
+ // Assert
+ Assert.AreEqual(3, result);
+ }
+
+ [Test]
+ public void ToString_StateUnderTest_ExpectedBehavior()
+ {
+ // Arrange
+ var unitUnderTest = this.CreateArgument();
+
+ // Act
+ var result = unitUnderTest.ToString();
+
+ // Assert
+ Assert.AreEqual("3", result);
+ }
+ }
+}
diff --git a/dsa/NUnitTestProject1/Auxiliary/Calculator/StringSolverTests.cs b/dsa/NUnitTestProject1/Auxiliary/Calculator/StringSolverTests.cs
new file mode 100644
index 0000000..998a78b
--- /dev/null
+++ b/dsa/NUnitTestProject1/Auxiliary/Calculator/StringSolverTests.cs
@@ -0,0 +1,105 @@
+using DSALib.Auxiliary.Calculator;
+using Moq;
+using NUnit.Framework;
+
+namespace NUnitTest.Auxiliary.Calculator
+{
+ [TestFixture]
+ public class StringSolverTests
+ {
+ private MockRepository mockRepository;
+
+
+
+ [SetUp]
+ public void SetUp()
+ {
+ this.mockRepository = new MockRepository(MockBehavior.Strict);
+
+
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ this.mockRepository.VerifyAll();
+ }
+
+ private StringSolver CreateStringSolver(string input)
+ {
+ return new StringSolver(input);
+ }
+
+ [Test]
+ public void Solve_StateUnderTest_ExpectedBehavior()
+ {
+ // Arrange
+ var unitUnderTest = this.CreateStringSolver("1+1");
+
+ // Act
+ var result = unitUnderTest.Solve();
+
+ // Assert
+ Assert.AreEqual(2,result);
+ }
+
+ [Test]
+ public void Solve_mult()
+ {
+ // Arrange
+ var unitUnderTest = this.CreateStringSolver("1+1-4*6+2");
+
+ // Act
+ var result = unitUnderTest.Solve();
+
+ // Assert
+ Assert.AreEqual(-20, result);
+ }
+
+ [Test]
+ public void Solve_braces()
+ {
+ // Arrange
+ var unitUnderTest = this.CreateStringSolver("1+(1-4)*6+2");
+
+ // Act
+ var result = unitUnderTest.Solve();
+
+ // Assert
+ Assert.AreEqual(-15, result);
+ }
+
+ [Test]
+ public void Solve_wrong_braces()
+ {
+ // Arrange
+ var unitUnderTest = this.CreateStringSolver("1+)(1-4)*6+2");
+
+ // Act
+ Assert.Throws<System.ArgumentException>(() =>unitUnderTest.Solve(), "Invalid brace sequence");
+ }
+
+ [Test, MaxTime(200)]
+ public void Solve_braces_timeout()
+ {
+ // Arrange
+ var unitUnderTest = this.CreateStringSolver("1+(1-(4)*6+2");
+
+ // Act
+ Assert.Throws<System.ArgumentException>(() => unitUnderTest.Solve(), "Invalid brace sequence");
+ }
+
+ [Test]
+ public void ToString_StateUnderTest_ExpectedBehavior()
+ {
+ // Arrange
+ var unitUnderTest = this.CreateStringSolver("3+-4");
+
+ // Act
+ var result = unitUnderTest.ToString();
+
+ // Assert
+ Assert.AreEqual("(0+3+-4)", result);
+ }
+ }
+}
diff --git a/dsa/NUnitTestProject1/Auxiliary/DiceTests.cs b/dsa/NUnitTestProject1/Auxiliary/DiceTests.cs
new file mode 100644
index 0000000..6b37492
--- /dev/null
+++ b/dsa/NUnitTestProject1/Auxiliary/DiceTests.cs
@@ -0,0 +1,71 @@
+using DSALib.Auxiliary;
+using Moq;
+using NUnit.Framework;
+using System;
+
+namespace NUnitTest.Auxiliary
+{
+ [TestFixture]
+ public class DiceTests
+ {
+ private MockRepository mockRepository;
+
+
+
+ [SetUp]
+ public void SetUp()
+ {
+ this.mockRepository = new MockRepository(MockBehavior.Strict);
+
+
+ }
+
+ [TearDown]
+ public void TearDown()
+ {
+ this.mockRepository.VerifyAll();
+ }
+
+ private void CreateDice()
+ {}
+
+ [Test]
+ public void Roll_StateUnderTest_ExpectedBehavior()
+ {
+ // Arrange
+ int d = 20;
+
+ // Act
+ var result = Dice.Roll(d);
+
+ // Assert
+ Assert.True(result > 0 && result < d+1);
+ }
+
+ [Test]
+ public void Roll_StateUnderTest_ExpectedBehavior1()
+ {
+ // Arrange
+ string input = "w";
+
+ // Act
+ Assert.Throws<ArgumentException>( () => Dice.Roll(input));
+ }
+
+ [Test]
+ public void Roll_zero_dice()
+ {
+ // Arrange
+ int count = 0;
+ int d = 2;
+
+ // Act
+ var result = Dice.Roll(
+ count,
+ d);
+
+ // Assert
+ Assert.AreEqual(0, result);
+ }
+ }
+}
diff --git a/dsa/NUnitTestProject1/NUnitTest.csproj b/dsa/NUnitTestProject1/NUnitTest.csproj
new file mode 100644
index 0000000..7b3b1ea
--- /dev/null
+++ b/dsa/NUnitTestProject1/NUnitTest.csproj
@@ -0,0 +1,20 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+ <PropertyGroup>
+ <TargetFramework>netcoreapp2.2</TargetFramework>
+
+ <IsPackable>false</IsPackable>
+ </PropertyGroup>
+
+ <ItemGroup>
+ <PackageReference Include="Moq" Version="4.5.28" />
+ <PackageReference Include="nunit" Version="3.11.0" />
+ <PackageReference Include="NUnit3TestAdapter" Version="3.11.0" />
+ <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.9.0" />
+ </ItemGroup>
+
+ <ItemGroup>
+ <ProjectReference Include="..\DSALib\DSALib.csproj" />
+ </ItemGroup>
+
+</Project>