diff --git a/README.md b/README.md index b6cee21..2653974 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,31 @@ -# advanced-python-homework-2023 +## advanced-python-homework-2023 +## Installation + +1. Install `Python` + +2. Install `python3-venv` by the following command: `apt install python3-venv` + +3. Create and activate your virtual environment following the [instructions](https://docs.python.org/3/tutorial/venv.html) + +4. Install the `requirements.txt` dependencies following the commands: +``` +cd ./scada_system +pip3 install -r requirements.txt +``` + +5. Install the package in editable mode: +``` +pip3 install -e . +``` + +6. To generate documentation in HTML format, you need to run the following commands: +``` +cd ./docs +make html +``` +## Tests +1. To run the tests, go to the `scada_system` directory and run the following command: +``` +python3 -m unittest +``` \ No newline at end of file diff --git a/scada_system/README.md b/scada_system/README.md deleted file mode 100644 index 5fd788a..0000000 --- a/scada_system/README.md +++ /dev/null @@ -1,24 +0,0 @@ -## Installation - -1. Install `Python` - -2. Install `python3-venv` by the following command: `apt install python3-venv` - -3. Create and activate your virtual environment following the [instructions](https://docs.python.org/3/tutorial/venv.html) - -4. Install the `requirements.txt` dependencies following the commands: -``` -cd ./scada_system -pip3 install -r requirements.txt -``` - -5. Install the package in editable mode: -``` -pip3 install -e . -``` - -6. To generate documentation in HTML format, you need to run the following commands: -``` -cd ./docs -make html -``` \ No newline at end of file diff --git a/scada_system/tests/__init__.py b/scada_system/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/scada_system/tests/controls/__init__.py b/scada_system/tests/controls/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/scada_system/tests/controls/test_device.py b/scada_system/tests/controls/test_device.py index 51249ad..a438303 100644 --- a/scada_system/tests/controls/test_device.py +++ b/scada_system/tests/controls/test_device.py @@ -9,4 +9,6 @@ class DeviceLifecycleStateTest(TestCase): pass def test_enum(self): - self.assertEqual(DeviceLifecycleStateTest["INIT"], DeviceLifecycleStateTest.INIT) + self.assertEqual(DeviceLifecycleState["INIT"], DeviceLifecycleState.INIT) + self.assertEqual(DeviceLifecycleState["OPEN"], DeviceLifecycleState.OPEN) + self.assertEqual(DeviceLifecycleState["CLOSE"], DeviceLifecycleState.CLOSE) diff --git a/scada_system/tests/equipment/__init__.py b/scada_system/tests/equipment/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/scada_system/tests/equipment/test_turtle_device.py b/scada_system/tests/equipment/test_turtle_device.py index a12912b..4ddbfc5 100644 --- a/scada_system/tests/equipment/test_turtle_device.py +++ b/scada_system/tests/equipment/test_turtle_device.py @@ -1,5 +1,4 @@ from unittest import TestCase - from equipment.turtle_device import TurtleDevice @@ -10,4 +9,10 @@ class TurtleDeviceTest(TestCase): def test_open(self): self.device.open() + self.device.execute('forward', 100) + self.device.execute('left', 90) + self.device.execute('right', 90) + self.device.execute('color', 'red') + self.device.execute('circle', 120, 180) + self.device.execute('home') self.device.close() \ No newline at end of file