Ejemplo n.º 1
0
    def test_parse_css_color(self):
        rgb = parse_css_color("#F0F")
        self.assertEqual(rgb, RGB(255, 0, 255))

        rgb = parse_css_color("#FF00FF")
        self.assertEqual(rgb, RGB(255, 0, 255))

        rgb = parse_css_color("   rgb   (   255,    0,    255   )   ")
        self.assertEqual(rgb, RGB(255, 0, 255))

        bhs = parse_css_color("   bhs  (   255,    32767,    255   )   ")
        self.assertEqual(bhs, BHS(255, 32767, 255))

        mired = parse_css_color("   mired (   500   )   ")
        self.assertEqual(mired, Mired(500))
Ejemplo n.º 2
0
 def light_state_from_color(self, raw_color: str) -> dict:
     on_state = raw_color != "none"
     props = {"on": on_state}
     if on_state:
         color = parse_css_color(raw_color)
         props["transitiontime"] = int(self.transition_time * 10)
         if isinstance(color, BHS):
             props.update({"bri": color.b, "hue": color.h, "sat": color.s})
         else:
             assert isinstance(color, Mired)
             props.update({"ct": color.ct})
     return props