From 3dae9363e7232230e94cde7eae4c0564695a0607 Mon Sep 17 00:00:00 2001 From: jimmy Date: Wed, 12 Nov 2025 19:20:50 +1300 Subject: [PATCH] Remove unused pattern tests --- test/patterns/bidirectional_scanner.py | 34 ----------------------- test/patterns/blink.py | 20 +++++++------- test/patterns/color_transition.py | 34 ----------------------- test/patterns/color_wipe.py | 34 ----------------------- test/patterns/flicker.py | 35 ------------------------ test/patterns/off.py | 14 +++++----- test/patterns/on.py | 28 +++++++++---------- test/patterns/pulse.py | 37 +++++++++++++++++++++++--- test/patterns/rainbow_cycle.py | 33 ----------------------- test/patterns/scanner.py | 34 ----------------------- test/patterns/theater_chase.py | 34 ----------------------- 11 files changed, 64 insertions(+), 273 deletions(-) delete mode 100644 test/patterns/bidirectional_scanner.py delete mode 100644 test/patterns/color_transition.py delete mode 100644 test/patterns/color_wipe.py delete mode 100644 test/patterns/flicker.py delete mode 100644 test/patterns/rainbow_cycle.py delete mode 100644 test/patterns/scanner.py delete mode 100644 test/patterns/theater_chase.py diff --git a/test/patterns/bidirectional_scanner.py b/test/patterns/bidirectional_scanner.py deleted file mode 100644 index dd2496f..0000000 --- a/test/patterns/bidirectional_scanner.py +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env python3 -import utime -from machine import WDT -from settings import Settings -from patterns import Patterns - - -def run(): - s = Settings() - pin = s.get("led_pin", 10) - num = s.get("num_leds", 30) - - p = Patterns(pin=pin, num_leds=num) - wdt = WDT(timeout=10000) - p.set_param("br", 127) - p.set_param("dl", 50) - p.set_param("cl", [(0, 255, 0), (0, 255, 0)]) - p.set_param("pt", "bidirectional_scanner") - - start = utime.ticks_ms() - while utime.ticks_diff(utime.ticks_ms(), start) < 1500: - p.tick() - wdt.feed() - utime.sleep_ms(10) - - p.set_param("pt", "off") - p.tick() - utime.sleep_ms(100) - - -if __name__ == "__main__": - run() - - diff --git a/test/patterns/blink.py b/test/patterns/blink.py index 9701538..d4dce73 100644 --- a/test/patterns/blink.py +++ b/test/patterns/blink.py @@ -1,11 +1,12 @@ #!/usr/bin/env python3 +import uasyncio as asyncio import utime from machine import WDT from settings import Settings from patterns import Patterns -def run(): +async def main(): s = Settings() pin = s.get("led_pin", 10) num = s.get("num_leds", 30) @@ -15,20 +16,17 @@ def run(): p.set_param("br", 64) p.set_param("dl", 200) p.set_param("cl", [(255, 0, 0), (0, 0, 255)]) - p.set_param("pt", "blink") - + p.select("blink") + task = asyncio.create_task(p.run()) start = utime.ticks_ms() while utime.ticks_diff(utime.ticks_ms(), start) < 1500: - p.tick() wdt.feed() - utime.sleep_ms(10) - - p.set_param("pt", "off") - p.tick() - utime.sleep_ms(100) - + await asyncio.sleep_ms(10) + await p.stop() + await task + if __name__ == "__main__": - run() + asyncio.run(main()) diff --git a/test/patterns/color_transition.py b/test/patterns/color_transition.py deleted file mode 100644 index 448d9e7..0000000 --- a/test/patterns/color_transition.py +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env python3 -import utime -from machine import WDT -from settings import Settings -from patterns import Patterns - - -def run(): - s = Settings() - pin = s.get("led_pin", 10) - num = s.get("num_leds", 30) - - p = Patterns(pin=pin, num_leds=num) - wdt = WDT(timeout=10000) - p.set_param("br", 64) - p.set_param("dl", 100) - p.set_param("cl", [(255, 0, 0), (0, 255, 0)]) - p.set_param("pt", "color_transition") - - start = utime.ticks_ms() - while utime.ticks_diff(utime.ticks_ms(), start) < 1500: - p.tick() - wdt.feed() - utime.sleep_ms(10) - - p.set_param("pt", "off") - p.tick() - utime.sleep_ms(100) - - -if __name__ == "__main__": - run() - - diff --git a/test/patterns/color_wipe.py b/test/patterns/color_wipe.py deleted file mode 100644 index 5531ad6..0000000 --- a/test/patterns/color_wipe.py +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env python3 -import utime -from machine import WDT -from settings import Settings -from patterns import Patterns - - -def run(): - s = Settings() - pin = s.get("led_pin", 10) - num = s.get("num_leds", 30) - - p = Patterns(pin=pin, num_leds=num) - wdt = WDT(timeout=10000) - p.set_param("br", 64) - p.set_param("dl", 60) - p.set_param("cl", [(0, 0, 255), (255, 0, 0)]) - p.set_param("pt", "color_wipe") - - start = utime.ticks_ms() - while utime.ticks_diff(utime.ticks_ms(), start) < 1500: - p.tick() - wdt.feed() - utime.sleep_ms(10) - - p.set_param("pt", "off") - p.tick() - utime.sleep_ms(100) - - -if __name__ == "__main__": - run() - - diff --git a/test/patterns/flicker.py b/test/patterns/flicker.py deleted file mode 100644 index 002efcb..0000000 --- a/test/patterns/flicker.py +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env python3 -import utime -from machine import WDT -from settings import Settings -from patterns import Patterns - - -def run(): - s = Settings() - pin = s.get("led_pin", 10) - num = s.get("num_leds", 30) - - p = Patterns(pin=pin, num_leds=num) - wdt = WDT(timeout=10000) - p.set_param("br", 127) - p.set_param("dl", 100) - p.set_param("cl", [(255, 136, 0), (255, 136, 0)]) - p.set_param("n1", 10) - p.set_param("pt", "flicker") - - start = utime.ticks_ms() - while utime.ticks_diff(utime.ticks_ms(), start) < 1500: - p.tick() - wdt.feed() - utime.sleep_ms(10) - - p.set_param("pt", "off") - p.tick() - utime.sleep_ms(100) - - -if __name__ == "__main__": - run() - - diff --git a/test/patterns/off.py b/test/patterns/off.py index f429208..008a0c4 100644 --- a/test/patterns/off.py +++ b/test/patterns/off.py @@ -1,24 +1,26 @@ #!/usr/bin/env python3 -import utime +import uasyncio as asyncio from machine import WDT from settings import Settings from patterns import Patterns -def run(): +async def main(): s = Settings() pin = s.get("led_pin", 10) num = s.get("num_leds", 30) p = Patterns(pin=pin, num_leds=num) wdt = WDT(timeout=10000) - p.set_param("pt", "off") - p.tick() + p.select("off") + task = asyncio.create_task(p.run()) wdt.feed() - utime.sleep_ms(200) + await asyncio.sleep_ms(200) + p.stopped = True + await task if __name__ == "__main__": - run() + asyncio.run(main()) diff --git a/test/patterns/on.py b/test/patterns/on.py index 9c42609..af264c4 100644 --- a/test/patterns/on.py +++ b/test/patterns/on.py @@ -1,11 +1,11 @@ #!/usr/bin/env python3 -import utime +import uasyncio as asyncio from machine import WDT from settings import Settings from patterns import Patterns -def run(): +async def main(): s = Settings() pin = s.get("led_pin", 10) num = s.get("num_leds", 30) @@ -15,20 +15,20 @@ def run(): p.set_param("br", 64) p.set_param("dl", 120) p.set_param("cl", [(255, 0, 0), (0, 0, 255)]) - p.set_param("pt", "on") - - start = utime.ticks_ms() - while utime.ticks_diff(utime.ticks_ms(), start) < 800: - p.tick() - wdt.feed() - utime.sleep_ms(10) - - p.set_param("pt", "off") - p.tick() - utime.sleep_ms(100) + p.select("on") + task = asyncio.create_task(p.run()) + await asyncio.sleep_ms(800) + p.stopped = True + await task + p.stopped = False + p.select("off") + task = asyncio.create_task(p.run()) + await asyncio.sleep_ms(100) + p.stopped = True + await task if __name__ == "__main__": - run() + asyncio.run(main()) diff --git a/test/patterns/pulse.py b/test/patterns/pulse.py index e7ebad0..f536fcc 100644 --- a/test/patterns/pulse.py +++ b/test/patterns/pulse.py @@ -18,6 +18,7 @@ async def main(): print("Test 1: Basic pulse pattern") p.set_param("br", 255) p.set_param("dl", 1000) # 1 second delay between pulses + p.set_param("auto", True) # Run continuously p.set_param("cl", [(255, 255, 255), (255, 255, 255)]) p.set_param("n1", 200) # Attack: 200ms p.set_param("n2", 200) # Hold: 200ms @@ -36,6 +37,7 @@ async def main(): print("Test 2: Fast pulse pattern") p.stopped = False p.set_param("dl", 500) # 500ms delay between pulses + p.set_param("auto", True) # Run continuously p.set_param("n1", 100) # Attack: 100ms p.set_param("n2", 100) # Hold: 100ms p.set_param("n3", 100) # Decay: 100ms @@ -53,6 +55,7 @@ async def main(): print("Test 3: Colored pulse pattern") p.stopped = False p.set_param("dl", 800) + p.set_param("auto", True) # Run continuously p.set_param("cl", [(255, 0, 0), (0, 0, 255)]) # Red pulse p.set_param("n1", 150) p.set_param("n2", 150) @@ -71,6 +74,7 @@ async def main(): print("Test 4: Testing delay restart timing") p.stopped = False p.set_param("dl", 500) # 500ms delay + p.set_param("auto", True) # Run continuously p.set_param("n1", 100) # Total attack+hold+decay = 300ms, should wait 200ms more p.set_param("n2", 100) p.set_param("n3", 100) @@ -89,10 +93,11 @@ async def main(): p.stopped = True await task - # Test 5: Single-shot pulse (delay=0) - print("Test 5: Single-shot pulse (delay=0)") + # Test 5: Single-shot pulse (auto=False) + print("Test 5: Single-shot pulse (auto=False)") p.stopped = False - p.set_param("dl", 0) # No delay - should run only once + p.set_param("dl", 500) # Delay between pulses + p.set_param("auto", False) # Run only once p.set_param("cl", [(0, 255, 0), (0, 255, 0)]) # Green pulse p.set_param("n1", 150) # Attack: 150ms p.set_param("n2", 150) # Hold: 150ms @@ -111,10 +116,34 @@ async def main(): # Task should have completed on its own (not stopped manually) # Verify it's stopped if not p.stopped: - print("Warning: Pulse should have stopped automatically with delay=0") + print("Warning: Pulse should have stopped automatically with auto=False") p.stopped = True await task + # Test 6: Pulse cycles through colors + print("Test 6: Pulse cycles through colors") + p.stopped = False + p.set_param("dl", 300) # cycle interval + p.set_param("auto", True) # Run continuously + p.set_param("cl", [ + (255, 0, 0), # red + (0, 255, 0), # green + (0, 0, 255), # blue + (255, 255, 0), # yellow + ]) + p.set_param("n1", 50) + p.set_param("n2", 0) + p.set_param("n3", 50) + p.select("pulse") + task = asyncio.create_task(p.run()) + start = utime.ticks_ms() + # Run long enough to observe multiple color cycles + while utime.ticks_diff(utime.ticks_ms(), start) < 10000: + wdt.feed() + await asyncio.sleep_ms(10) + p.stopped = True + await task + # Cleanup print("Test complete, turning off") p.stopped = False diff --git a/test/patterns/rainbow_cycle.py b/test/patterns/rainbow_cycle.py deleted file mode 100644 index 7c7b7ee..0000000 --- a/test/patterns/rainbow_cycle.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python3 -import utime -from machine import WDT -from settings import Settings -from patterns import Patterns - - -def run(): - s = Settings() - pin = s.get("led_pin", 10) - num = s.get("num_leds", 30) - - p = Patterns(pin=pin, num_leds=num) - wdt = WDT(timeout=10000) - p.set_param("br", 64) - p.set_param("dl", 100) - p.set_param("pt", "rainbow_cycle") - - start = utime.ticks_ms() - while utime.ticks_diff(utime.ticks_ms(), start) < 1500: - p.tick() - wdt.feed() - utime.sleep_ms(10) - - p.set_param("pt", "off") - p.tick() - utime.sleep_ms(100) - - -if __name__ == "__main__": - run() - - diff --git a/test/patterns/scanner.py b/test/patterns/scanner.py deleted file mode 100644 index 37f75e4..0000000 --- a/test/patterns/scanner.py +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env python3 -import utime -from machine import WDT -from settings import Settings -from patterns import Patterns - - -def run(): - s = Settings() - pin = s.get("led_pin", 10) - num = s.get("num_leds", 30) - - p = Patterns(pin=pin, num_leds=num) - wdt = WDT(timeout=10000) - p.set_param("br", 127) - p.set_param("dl", 50) - p.set_param("cl", [(0, 255, 0), (0, 255, 0)]) - p.set_param("pt", "scanner") - - start = utime.ticks_ms() - while utime.ticks_diff(utime.ticks_ms(), start) < 1500: - p.tick() - wdt.feed() - utime.sleep_ms(10) - - p.set_param("pt", "off") - p.tick() - utime.sleep_ms(100) - - -if __name__ == "__main__": - run() - - diff --git a/test/patterns/theater_chase.py b/test/patterns/theater_chase.py deleted file mode 100644 index 576c206..0000000 --- a/test/patterns/theater_chase.py +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env python3 -import utime -from machine import WDT -from settings import Settings -from patterns import Patterns - - -def run(): - s = Settings() - pin = s.get("led_pin", 10) - num = s.get("num_leds", 30) - - p = Patterns(pin=pin, num_leds=num) - wdt = WDT(timeout=10000) - p.set_param("br", 64) - p.set_param("dl", 100) - p.set_param("cl", [(255, 255, 255), (0, 0, 0)]) - p.set_param("pt", "theater_chase") - - start = utime.ticks_ms() - while utime.ticks_diff(utime.ticks_ms(), start) < 1500: - p.tick() - wdt.feed() - utime.sleep_ms(10) - - p.set_param("pt", "off") - p.tick() - utime.sleep_ms(100) - - -if __name__ == "__main__": - run() - -