Exemplo n.º 1
0
Arquivo: tests.py Projeto: tback/spx
    def test_get_usage(self, p, d):
        p.return_value.status_code = 200
        p.return_value.content = '<?xml version="1.0" encoding="UTF8"?><SMARTPLUG id="edimax">\n<CMD id="get">\n    <NOW_POWER><Device.System.Power.LastToggleTime>20150912160852</Device.System.Power.LastToggleTime><Device.System.Power.NowCurrent>0.0450</Device.System.Power.NowCurrent><Device.System.Power.NowPower>5.29</Device.System.Power.NowPower><Device.System.Power.NowEnergy.Day>0.080</Device.System.Power.NowEnergy.Day><Device.System.Power.NowEnergy.Week>0.080</Device.System.Power.NowEnergy.Week><Device.System.Power.NowEnergy.Month>1.214</Device.System.Power.NowEnergy.Month>\n    </NOW_POWER>\n</CMD>\n</SMARTPLUG>'
        plug = Smartplug('240.0.0.1')

        self.assertDictEqual(
            plug.get_usage(),
            {
                't': datetime.datetime(2015, 9, 17, 14, 28, 1),
                'current': 0.045,
                'day': 0.080,
                'last_toggle_time': datetime.datetime(2015, 9, 12, 16, 8, 52),
                'month': 1.214,
                'power': 5.29,
                'week': 0.080,
            }
        )
        p.assert_called_once_with(
            'http://*****:*****@240.0.0.1:10000/smartplug.cgi',
            data='\n<?xml version="1.0" encoding="UTF8"?>\n<SMARTPLUG id="edimax">\n<CMD id="get">\n    <NOW_POWER>\n    </NOW_POWER>\n</CMD>\n</SMARTPLUG>',
            timeout=5
        )
Exemplo n.º 2
0
Arquivo: tests.py Projeto: tback/spx
 def test_get_state(self, p):
     p.return_value.status_code = 200
     p.return_value.content = '<?xml version="1.0" encoding="UTF8"?><SMARTPLUG id="edimax">\n<CMD id="get">\n    <Device.System.Power.State>OFF</Device.System.Power.State>\n</CMD>\n</SMARTPLUG>'
     plug = Smartplug('240.0.0.1')
     self.assertEquals(plug.get_state(), 'OFF')
Exemplo n.º 3
0
Arquivo: tests.py Projeto: tback/spx
    def test_set_state(self, p):
        p.return_value.status_code = 200
        p.return_value.content = '<?xml version="1.0" encoding="UTF8"?><SMARTPLUG id="edimax">\n<CMD id="setup">OK</CMD>\n</SMARTPLUG>'
        plug = Smartplug('240.0.0.1')

        self.assertTrue(plug.set_state('on'))