def test_fullName(self): v = AvrInfo('{"v":"1.2.3","c":"12345678", "b":"l", "y":1, "s":2 }') self.assertEqual("Arduino Leonardo",v.fullName()) v = AvrInfo('{"v":"1.2.3","c":"12345678", "b":"x", "y":1, "s":2 }') self.assertEqual("Spark Core",v.fullName()) v = AvrInfo('{"v":"1.2.3","c":"12345678", "b":"?", "y":1, "s":2 }') self.assertEqual("???? ????",v.fullName())
def test_articleFullName(self): v = AvrInfo('{"v":"1.2.3","c":"12345678", "b":"l", "y":1, "s":2 }') self.assertEqual("an Arduino Leonardo",v.articleFullName()) v = AvrInfo('{"v":"1.2.3","c":"12345678", "b":"s", "y":1, "s":2 }') self.assertEqual("an Arduino Uno",v.articleFullName()) v = AvrInfo('{"v":"1.2.3","c":"12345678", "b":"x", "y":1, "s":2 }') self.assertEqual("a Spark Core",v.articleFullName())
def test_canParseAll(self): v = AvrInfo('{"v":"1.2.3","n":"99","c":"12345678", "b":"l", "y":0, "s":2 }') self.assertVersionEqual(v, "1.2.3") self.assertEqual(v.build, "99") self.assertEqual(v.commit, "12345678") self.assertEqual(v.board, AvrInfo.board_leonardo) self.assertEqual(v.simulator, False) self.assertEqual(v.shield, AvrInfo.shield_revC)
def test_isNewer(self): v = AvrInfo('{"v":"1.2.3","c":"12345678", "b":"l", "y":1, "s":2 }') self.assertFalse(v.isNewer("1.0.0")) self.assertFalse(v.isNewer("1.2.3")) self.assertTrue(v.isNewer("1.2.4")) self.assertTrue(v.isNewer("2.0.0"))
def test_canPrintExtendedVersionFull(self): v = AvrInfo('{"v":"1.2.3","c":"12345678", "b":"l", "y":1, "s":2 }') self.assertEqual('BrewPi v1.2.3, running commit 12345678, running on an Arduino Leonardo with a revC shield, running as simulator', v.toExtendedString())
def test_canPrintExtendedVersionEmpty(self): v = AvrInfo("") self.assertEqual("BrewPi v0.0.0", v.toExtendedString());
def newVersion(self): return AvrInfo()
ser, port = openSerial(config["port"], config["altport"], 57600, 0.2) if ser is None: printStdErr("Error opening serial port after programming. Program script will exit. Settings are not restored.") return 0 printStdErr("Now checking which settings and devices can be restored...") # read new version avrVersionNew = None retries = 0 requestVersion = True while requestVersion: for line in ser: if line[0] == "N": data = line.strip("\n")[2:] avrVersionNew = AvrInfo(data) printStdErr( "Checking new version: Found Arduino " + avrVersionNew.board + " with a " + str(avrVersionNew.shield) + " shield, " + "running BrewPi version " + str(avrVersionNew.version) + " build " + str(avrVersionNew.build) + " on port " + port + "\n" ) requestVersion = False