diff options
author | Marcin Zelent <zelent.marcin@protonmail.com> | 2017-12-12 14:24:47 +0100 |
---|---|---|
committer | Marcin Zelent <zelent.marcin@protonmail.com> | 2017-12-12 14:24:47 +0100 |
commit | e4e7dbf553bfa17a39830e67d14d3715946beab3 (patch) | |
tree | bf6c34aaeecb938f9ea11612d214a887ceb5d7ca /PollutometerWebApi.Tests/SqlOperatorTests.cs | |
parent | 54d1019413958e0ba24b85007c1f5f97ca19a0b3 (diff) |
Added unit tests and fixed some bugs.
Diffstat (limited to 'PollutometerWebApi.Tests/SqlOperatorTests.cs')
-rw-r--r-- | PollutometerWebApi.Tests/SqlOperatorTests.cs | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/PollutometerWebApi.Tests/SqlOperatorTests.cs b/PollutometerWebApi.Tests/SqlOperatorTests.cs new file mode 100644 index 0000000..2930679 --- /dev/null +++ b/PollutometerWebApi.Tests/SqlOperatorTests.cs @@ -0,0 +1,68 @@ +using Microsoft.VisualStudio.TestTools.UnitTesting; +using PollutometerWebApi.Models; +using System; + +namespace PollutometerWebApi.Tests +{ + [TestClass()] + public class SqlOperatorTests + { + [TestMethod()] + public void GetReadingsTest() + { + var readings = SqlOperator.GetReadings("SELECT * FROM Readings"); + Assert.IsTrue(readings.Count >= 1); + } + + [TestMethod()] + public void PostReadingTest() + { + var newReading = new Reading + { + TimeStamp = (int)DateTimeOffset.Now.ToUnixTimeSeconds(), + Co = 0.0, + No = 0.0, + So = 0.0 + }; + SqlOperator.PostReading(newReading); + var command = "SELECT * FROM Readings " + + "WHERE TimeStamp IN(SELECT MAX(TimeStamp) FROM Readings)"; + var latestReading = SqlOperator.GetReadings(command)[0]; + var command2 = $"SELECT * FROM Readings WHERE Id={latestReading.Id}"; + var reading = SqlOperator.GetReadings(command2)[0]; + Assert.AreEqual(newReading.TimeStamp, reading.TimeStamp); + } + + [TestMethod()] + public void PutReadingTest() + { + var newReading = new Reading + { + TimeStamp = (int)DateTimeOffset.Now.ToUnixTimeSeconds(), + Co = 0.5, + No = 0.5, + So = 0.5 + + }; + var command = "SELECT * FROM Readings " + + "WHERE TimeStamp IN(SELECT MAX(TimeStamp) FROM Readings)"; + var latestReading = SqlOperator.GetReadings(command)[0]; + SqlOperator.PutReading(latestReading.Id, newReading); + var command2 = $"SELECT * FROM Readings WHERE Id={latestReading.Id}"; + var reading = SqlOperator.GetReadings(command2)[0]; + Assert.AreEqual(newReading.TimeStamp, reading.TimeStamp); + } + + [TestMethod()] + public void DeleteReadingTest() + { + var command = "SELECT * FROM Readings " + + "WHERE TimeStamp IN(SELECT MAX(TimeStamp) FROM Readings)"; + var latestReading = SqlOperator.GetReadings(command)[0]; + SqlOperator.DeleteReading(latestReading.Id); + var command2 = $"SELECT * FROM Readings WHERE Id={latestReading.Id}"; + var readings = SqlOperator.GetReadings(command2); + Assert.IsTrue(readings.Count == 0); + } + } +}
\ No newline at end of file |