feat: focus panel on rgb leds and speed boot
This commit is contained in:
+23
-3
@@ -2,6 +2,7 @@
|
||||
import json
|
||||
import tempfile
|
||||
import threading
|
||||
import urllib.error
|
||||
import urllib.request
|
||||
from pathlib import Path
|
||||
from led_panel import Handler, ThreadingHTTPServer
|
||||
@@ -34,6 +35,16 @@ def main():
|
||||
(d2 / 'brightness').write_text('1')
|
||||
(d2 / 'max_brightness').write_text('1')
|
||||
(d2 / 'trigger').write_text('[none] timer')
|
||||
d3 = root / 'green:wlan'
|
||||
d3.mkdir()
|
||||
(d3 / 'brightness').write_text('1')
|
||||
(d3 / 'max_brightness').write_text('1')
|
||||
(d3 / 'trigger').write_text('[none] timer')
|
||||
hidden = root / 'sim:en'
|
||||
hidden.mkdir()
|
||||
(hidden / 'brightness').write_text('1')
|
||||
(hidden / 'max_brightness').write_text('1')
|
||||
(hidden / 'trigger').write_text('[none] timer')
|
||||
config_path = root / 'config.json'
|
||||
led_panel.LED_ROOT = root
|
||||
led_panel.CONFIG_PATH = config_path
|
||||
@@ -43,7 +54,13 @@ def main():
|
||||
t.start()
|
||||
try:
|
||||
leds = req(port, '/api/leds')
|
||||
assert leds['ok'] and leds['leds'][0]['name'] == 'blue:wan'
|
||||
names = [led['name'] for led in leds['leds']]
|
||||
assert leds['ok'] and names == ['blue:wan', 'green:wlan', 'red:power']
|
||||
try:
|
||||
req(port, '/api/brightness', {'name':'sim:en','value':0})
|
||||
raise AssertionError('hidden LED unexpectedly writable')
|
||||
except urllib.error.HTTPError as e:
|
||||
assert e.code == 400
|
||||
b = req(port, '/api/brightness', {'name':'blue:wan','value':1})
|
||||
assert b['ok'] and (d / 'brightness').read_text() == '1'
|
||||
tr = req(port, '/api/trigger', {'name':'blue:wan','trigger':'timer'})
|
||||
@@ -64,12 +81,15 @@ def main():
|
||||
assert (d / 'brightness').read_text() == '1'
|
||||
assert (d / 'delay_on').read_text() == '123'
|
||||
all_off = req(port, '/api/all-off', {})
|
||||
assert all_off['ok'] and all_off['changed'] == 2
|
||||
assert all_off['ok'] and all_off['changed'] == 3
|
||||
assert (d / 'brightness').read_text() == '0'
|
||||
assert (d2 / 'brightness').read_text() == '0'
|
||||
assert (d3 / 'brightness').read_text() == '0'
|
||||
assert (hidden / 'brightness').read_text() == '1'
|
||||
assert '[none]' in (d / 'trigger').read_text() or (d / 'trigger').read_text() == 'none'
|
||||
assert '[none]' in (d2 / 'trigger').read_text() or (d2 / 'trigger').read_text() == 'none'
|
||||
print('OK: API write + persistence + all-off regression passed')
|
||||
assert '[none]' in (d3 / 'trigger').read_text() or (d3 / 'trigger').read_text() == 'none'
|
||||
print('OK: RGB filter + API write + persistence + all-off regression passed')
|
||||
finally:
|
||||
httpd.shutdown()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user