mirror of
https://github.com/naruxde/revpimodio2.git
synced 2025-11-08 13:53:53 +01:00
62 lines
1.9 KiB
Python
62 lines
1.9 KiB
Python
# -*- coding: utf-8 -*-
|
|
"""Test for RevPi Compact."""
|
|
__author__ = "Sven Sager"
|
|
__copyright__ = "Copyright (C) 2024 Sven Sager"
|
|
__license__ = "GPLv2"
|
|
|
|
from os.path import join, dirname
|
|
|
|
import revpimodio2
|
|
from tests import TestRevPiModIO
|
|
|
|
|
|
class TestCompact(TestRevPiModIO):
|
|
|
|
data_dir = dirname(__file__)
|
|
|
|
def test_compact(self):
|
|
rpi = self.modio(configrsc="config_compact.rsc")
|
|
|
|
self.assertIsInstance(rpi.core, revpimodio2.device.Compact)
|
|
|
|
# COMPACT LEDs prüfen
|
|
self.assertEqual(rpi.io.RevPiLED.get_value(), b"\x00")
|
|
rpi.core.A1 = revpimodio2.OFF
|
|
self.assertEqual(rpi.core.A1, 0)
|
|
rpi.core.A1 = revpimodio2.GREEN
|
|
self.assertEqual(rpi.io.RevPiLED.get_value(), b"\x01")
|
|
self.assertEqual(rpi.core.A1, 1)
|
|
rpi.core.A1 = revpimodio2.RED
|
|
self.assertEqual(rpi.io.RevPiLED.get_value(), b"\x02")
|
|
self.assertEqual(rpi.core.A1, 2)
|
|
with self.assertRaises(ValueError):
|
|
rpi.core.A1 = 5
|
|
|
|
rpi.core.A2 = revpimodio2.OFF
|
|
self.assertEqual(rpi.core.A2, 0)
|
|
self.assertEqual(rpi.io.RevPiLED.get_value(), b"\x02")
|
|
rpi.core.A2 = revpimodio2.GREEN
|
|
self.assertEqual(rpi.io.RevPiLED.get_value(), b"\x06")
|
|
self.assertEqual(rpi.core.A2, 1)
|
|
rpi.core.A2 = revpimodio2.RED
|
|
self.assertEqual(rpi.io.RevPiLED.get_value(), b"\x0a")
|
|
self.assertEqual(rpi.core.A2, 2)
|
|
with self.assertRaises(ValueError):
|
|
rpi.core.A2 = 5
|
|
|
|
# Spezielle Werte aufrufen
|
|
self.assertIsInstance(rpi.core.temperature, int)
|
|
self.assertIsInstance(rpi.core.frequency, int)
|
|
rpi.core.wd_toggle()
|
|
|
|
# Directzuweisung nicht erlaubt
|
|
with self.assertRaisesRegex(AttributeError, r"direct assignment is not supported"):
|
|
rpi.core.a1green = True
|
|
|
|
rpi.exit()
|
|
del rpi
|
|
|
|
# Bit piCtory config
|
|
rpi = self.modio(configrsc="config_compact_bits.json")
|
|
del rpi
|