Exemple #1
0
def relay_script():
    # Basic commandline interface for testing the relay module.
    def usage():
        print "Usage: %s [powercycle|status|turnon|turnoff] <hostname> <bank> <relay>" % sys.argv[
            0]
        sys.exit(1)

    if len(sys.argv) != 5:
        usage()
    cmd, hostname, bnk, rly = sys.argv[1:5]
    bnk, rly = int(bnk), int(rly)
    if cmd == 'powercycle':
        if relay.powercycle(hostname, bnk, rly, timeout=60):
            print "OK"
        else:
            print "FAILED"
            sys.exit(1)
    elif cmd == 'status':
        status = relay.get_status(hostname, bnk, rly, timeout=60)
        if status is None:
            print "FAILED"
            sys.exit(1)
        print "bank %d, relay %d status: %s" % (bnk, rly,
                                                'on' if status else 'off')
    elif cmd == 'turnon' or cmd == 'turnoff':
        status = (cmd == 'turnon')
        if relay.set_status(hostname, bnk, rly, status, timeout=60):
            print "OK"
        else:
            print "FAILED"
            sys.exit(1)
    else:
        usage()
    sys.exit(0)
Exemple #2
0
def relay_script():
    # Basic commandline interface for testing the relay module.
    def usage():
        print "Usage: %s [powercycle|status|turnon|turnoff] <hostname> <bank> <relay>" % sys.argv[0]
        sys.exit(2)
    if len(sys.argv) != 5:
        usage()
    cmd, hostname, bnk, rly = sys.argv[1:5]
    bnk, rly = int(bnk), int(rly)
    if cmd == 'powercycle':
        if relay.powercycle(hostname, bnk, rly, timeout=60):
            print "OK"
        else:
            print "FAILED"
            sys.exit(1)
    elif cmd == 'status':
        status = relay.get_status(hostname, bnk, rly, timeout=60)
        if status is None:
            print "FAILED"
            sys.exit(1)
        print "bank %d, relay %d status: %s" % (bnk, rly, 'on' if status else 'off')
    elif cmd == 'turnon' or cmd == 'turnoff':
        status = (cmd == 'turnon')
        if relay.set_status(hostname, bnk, rly, status, timeout=60):
            print "OK"
        else:
            print "FAILED"
            sys.exit(1)
    else:
        usage()
    sys.exit(0)
Exemple #3
0
 def test_get_status_timeout(self):
     self.relayboard.delay = 0.12
     self.relayboard.skip_final_1s = True
     self.assertEqual(relay.get_status(self.relay_host, 2, 2, 0.1), None)
Exemple #4
0
 def test_get_status(self, sleep):
     self.assertEqual(relay.get_status(self.relay_host, 2, 2, 10), True)
     self.assertEqual(self.relayboard.actions, [('get', 2, 2)])
Exemple #5
0
 def test_get_status_timeout(self):
     self.server.delay = 1
     self.assertEqual(relay.get_status('127.0.0.1', 2, 2, 0.1), None)
Exemple #6
0
 def test_get_status(self, sleep):
     self.assertEqual(relay.get_status('127.0.0.1', 2, 2, 10), True)
     self.assertEqual(self.server.actions, [('get', 2, 2)])
Exemple #7
0
 def test_get_status_timeout(self):
     self.relayboard.delay = 1
     self.assertEqual(relay.get_status(self.relay_host, 2, 2, 0.1), None)
Exemple #8
0
 def test_get_status(self, sleep):
     self.assertEqual(relay.get_status(self.relay_host, 2, 2, 10), True)
     self.assertEqual(self.relayboard.actions, [('get', 2, 2)])
Exemple #9
0
 def test_get_status_timeout(self):
     self.relayboard.delay = 0.12
     self.relayboard.skip_final_1s = True
     self.assertEqual(relay.get_status(self.relay_host, 2, 2, 0.1), None)