57 lines
1.6 KiB
Python
57 lines
1.6 KiB
Python
import unittest
|
|
from time import sleep
|
|
from src.navigate.tools.decorators import function_timer, FeatureList, AcquisitionMode, log_initialization
|
|
|
|
class TestFunctionTimer(unittest.TestCase):
|
|
|
|
@function_timer
|
|
def sample_function(self, duration):
|
|
sleep(duration)
|
|
return "Completed"
|
|
|
|
def test_function_timer(self):
|
|
duration = 1
|
|
result = self.sample_function(duration)
|
|
self.assertEqual(result, "Completed")
|
|
|
|
def test_function_timer_zero_duration(self):
|
|
duration = 0
|
|
result = self.sample_function(duration)
|
|
self.assertEqual(result, "Completed")
|
|
|
|
|
|
def sample_feature():
|
|
return "Feature Executed"
|
|
|
|
class TestFeatureList(unittest.TestCase):
|
|
|
|
def setUp(self):
|
|
self.feature_list = FeatureList(sample_feature)
|
|
|
|
def test_feature_list_name(self):
|
|
self.assertEqual(self.feature_list.feature_list_name, "Sample Feature")
|
|
|
|
def test_feature_list_execution(self):
|
|
result = self.feature_list()
|
|
self.assertEqual(result, "Feature Executed")
|
|
|
|
class SampleClass:
|
|
def __init__(self, value):
|
|
self.value = value
|
|
|
|
class TestAcquisitionMode(unittest.TestCase):
|
|
|
|
def setUp(self):
|
|
self.acquisition_mode = AcquisitionMode(SampleClass)
|
|
|
|
def test_acquisition_mode_initialization(self):
|
|
instance = self.acquisition_mode(10)
|
|
self.assertIsInstance(instance, SampleClass)
|
|
self.assertEqual(instance.value, 10)
|
|
|
|
def test_acquisition_mode_flag(self):
|
|
self.acquisition_mode.__is_acquisition_mode = True
|
|
self.assertTrue(self.acquisition_mode.__is_acquisition_mode)
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main() |