aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'pollutometer-api/PollutometerWebApi.Tests/AqiCalculatorTests.cs')
-rw-r--r--pollutometer-api/PollutometerWebApi.Tests/AqiCalculatorTests.cs51
1 files changed, 51 insertions, 0 deletions
diff --git a/pollutometer-api/PollutometerWebApi.Tests/AqiCalculatorTests.cs b/pollutometer-api/PollutometerWebApi.Tests/AqiCalculatorTests.cs
new file mode 100644
index 0000000..e84b687
--- /dev/null
+++ b/pollutometer-api/PollutometerWebApi.Tests/AqiCalculatorTests.cs
@@ -0,0 +1,51 @@
+using Microsoft.VisualStudio.TestTools.UnitTesting;
+using PollutometerWebApi.Models;
+
+namespace PollutometerWebApi.Tests
+{
+ [TestClass()]
+ public class AqiCalculatorTests
+ {
+ [TestMethod()]
+ public void CalculateAqiPerfectTest()
+ {
+ var reading = new Reading
+ {
+ Co = 2.2,
+ No = 0.1,
+ So = 0.8
+ };
+
+ var result = AqiCalculator.CalculateAqi(reading);
+ Assert.AreEqual(398.0100502512563, result.Value);
+ }
+
+ [TestMethod()]
+ public void CalculateAqiBigNumbersTest()
+ {
+ var reading = new Reading
+ {
+ Co = 100.2,
+ No = 100.1,
+ So = 100.8
+ };
+
+ var result = AqiCalculator.CalculateAqi(reading);
+ Assert.AreEqual(0, result.Value);
+ }
+
+ [TestMethod()]
+ public void CalculateAqiZerosTest()
+ {
+ var reading = new Reading
+ {
+ Co = 0,
+ No = 0,
+ So = 0
+ };
+
+ var result = AqiCalculator.CalculateAqi(reading);
+ Assert.AreEqual(0, result.Value);
+ }
+ }
+} \ No newline at end of file