예제 #1
0
 def testCreate_withException(self):
     self.assertEqual([], TempProvider.create())
예제 #2
0
 def testCreate_emptyList(self):
     self.assertEqual([], TempProvider.create())
예제 #3
0
 def testCreate_singleProvider_excludes_busMaster(self):
     self.assertEqual([TempProvider("test_serial")], TempProvider.create())
예제 #4
0
 def testCreate_multipleProviders(self):
     self.assertEqual([TempProvider("test_serial1"), TempProvider("test_serial2"), TempProvider("test_serial3")],
         TempProvider.create())
예제 #5
0
            self._heatingElement.activate()
        else:
            self._heatingElement.deactivate()

        currentTime = int(time.time())

        for temps in temps:
            self._tempLogger.log(currentTime, temps[0], temps[1], self._heatingElement.isActive())

    def publishLog(self):
        #noinspection PyStatementEffect
        Popen(["sh", "/root/publishLog.sh"]).pid

    def schedule(self):
        while True:
            try:
                self.testTempAndLog()
                self.publishLog()
            except Exception as e:
                self.LOG.error(e)
            time.sleep(60)


if __name__ == '__main__':
    logging.basicConfig(filename=tempfile.gettempdir() + "/" + 'beerTemp.log', level=logging.INFO)
    ch = logging.StreamHandler()
    ch.setLevel(logging.ERROR)
    logging.getLogger().addHandler(ch)

    BeerTemp(TempProvider.create(), HeatingElement(), TempLogger()).schedule()