Change unittest2 back into unittest.
[htsworkflow.git] / htsworkflow / frontend / experiments / test_experiments.py
index 9cafb03d992004ec97b5f3cde31745cb4e7f73b0..98d3433babb774dc49b19eb9e460db9746ce7ade 100644 (file)
@@ -4,6 +4,7 @@ try:
     import json
 except ImportError, e:
     import simplejson as json
+from datetime import timedelta
 import os
 import shutil
 import sys
@@ -481,6 +482,25 @@ class ExperimentsTestCases(TestCase):
             self.assertTrue(library_id in expected[lane_id])
         self.assertEqual(count, 10)
 
+    def test_flowcell_estimates(self):
+        classic_flowcell = models.FlowCell.objects.get(pk=153)
+        classic_mid = experiments.estimateFlowcellDuration(classic_flowcell)
+
+        self.assertEqual(classic_mid, timedelta(4, 44000))
+
+        rapid_flowcell = models.FlowCell.objects.get(pk=300)
+        rapid_mid = experiments.estimateFlowcellDuration(rapid_flowcell)
+        self.assertEqual(rapid_mid, timedelta(seconds=60800))
+
+    def test_round_to_days(self):
+        data = [
+            [timedelta(2, 12345), (timedelta(days=2), timedelta(days=3))],
+            [timedelta(0, 345), (timedelta(days=0), timedelta(days=1))],
+        ]
+
+        for estimate, expected in data:
+            rounded = experiments.roundToDays(estimate)
+            self.assertEqual(rounded, expected)
 
 class TestFileType(TestCase):
     fixtures = ['initial_data.json',
@@ -687,7 +707,7 @@ class TestSequencer(TestCase):
         self.assertEqual(len(errmsgs), 0)
 
 def suite():
-    from unittest2 import TestSuite, defaultTestLoader
+    from unittest import TestSuite, defaultTestLoader
     suite = TestSuite()
     for testcase in [ClusterStationTestCases,
                      SequencerTestCases,
@@ -699,5 +719,5 @@ def suite():
     return suite
 
 if __name__ == "__main__":
-    from unittest2 import main
+    from unittest import main
     main(defaultTest="suite")