Skip to content

Add support for Rgbic Neon Rope Light#452

Merged
bdraco merged 16 commits intosblibs:masterfrom
XiaoLing-git:add_light_0228
Apr 22, 2026
Merged

Add support for Rgbic Neon Rope Light#452
bdraco merged 16 commits intosblibs:masterfrom
XiaoLing-git:add_light_0228

Conversation

@XiaoLing-git
Copy link
Copy Markdown
Contributor

  1. Rgbic Neon Rope Light
  2. Rgbic Neon Wire Rope Light

@codecov
Copy link
Copy Markdown

codecov Bot commented Feb 28, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

Files with missing lines Coverage Δ
switchbot/__init__.py 100.00% <ø> (ø)
switchbot/adv_parser.py 97.82% <ø> (ø)
switchbot/const/__init__.py 100.00% <100.00%> (ø)
switchbot/devices/light_strip.py 100.00% <100.00%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds initial support for SwitchBot RGBIC Neon Rope Light / Neon Wire Rope Light by extending model constants, advertisement parsing, and introducing a dedicated neon light-strip device class, with accompanying test updates.

Changes:

  • Add new SwitchbotModel entries for RGBIC Neon Rope Light and RGBIC Neon Wire Rope Light.
  • Extend adv_parser.SUPPORTED_TYPES to recognize the new model identifiers.
  • Add SwitchbotRgbicNeonLight device class and update tests to include the new model.

Reviewed changes

Copilot reviewed 7 out of 8 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
switchbot/const/__init__.py Adds enum constants for the two new neon models.
switchbot/adv_parser.py Adds SUPPORTED_TYPES entries for new neon rope/wire model IDs.
switchbot/devices/light_strip.py Introduces SwitchbotRgbicNeonLight (RGB-only) device class.
switchbot/__init__.py Exports SwitchbotRgbicNeonLight from the package.
tests/test_adv_parser.py Adds advertisement parsing test vectors for RGBIC Neon Rope Light.
tests/__init__.py Adds RGBIC_NEON_LIGHT_INFO test fixture data.
tests/test_strip_light.py Adds neon device to parametrized strip-light tests and adjusts assertions.
.idea/workspace.xml Adds IDE workspace file (should not be committed).
Files not reviewed (1)
  • .idea/workspace.xml: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread switchbot/devices/light_strip.py
Comment thread tests/test_adv_parser.py
Comment thread .idea/workspace.xml Outdated
Comment thread tests/__init__.py Outdated
Comment thread tests/test_strip_light.py Outdated
Comment thread switchbot/devices/light_strip.py Outdated
Comment thread switchbot/devices/light_strip.py Outdated
Comment thread tests/__init__.py Outdated
Comment thread tests/test_strip_light.py
XiaoLing-git and others added 2 commits March 2, 2026 10:18
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Member

@bdraco bdraco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are unrelated changes in this PR

zerzhang
zerzhang previously approved these changes Apr 15, 2026
@zerzhang zerzhang requested a review from bdraco April 15, 2026 08:33
Comment thread switchbot/devices/light_strip.py
bdraco added 2 commits April 22, 2026 12:09
# Conflicts:
#	tests/test_strip_light.py
# Conflicts:
#	tests/test_strip_light.py
bdraco
bdraco previously approved these changes Apr 22, 2026
Dedicated test for the RGB-only neon light, mirroring the pattern used
for SwitchbotCandleWarmerLamp. Neon is excluded from RGB_LIGHT_CASES
(whose `test_default_info` asserts RGB + COLOR_TEMP), so without this
test its color_mode / color_modes properties had no coverage.
@bdraco bdraco merged commit 5f68e99 into sblibs:master Apr 22, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants