def testSensorDataToJson(self): #Create two sensorData instances sensorData1 = SensorData() sensorData2 = SensorData() #Create two sensor Data instances and check if their jsonStr are equal #First sensorData sensorData1.setName("Temperature Sensor") sensorData1.addValue(9) #change timestamp to bogus value because they will be different sensorData1.timeStamp = "None" #Second sensorData sensorData2.setName("Temperature Sensor") sensorData2.addValue(9) #change timestamp to bogus value because they will be different sensorData2.timeStamp = "None" #Get their JSON strings jsonStr1 = self.dataUtil.toJsonFromSensorData(sensorData1) jsonStr2 = self.dataUtil.toJsonFromSensorData(sensorData2) #Check for equality self.assertEqual(jsonStr1, jsonStr2) pass
def toSensorfromJson(self, jsonData): sdDict = json.loads(jsonData) sd = SensorData('Temperature', 0, 30) sd.name = sdDict['name'] sd.timeStamp = sdDict['timeStamp'] sd.avgVal = sdDict['avgVal'] sd.minVal = sdDict['minVal'] sd.maxVal = sdDict['maxVal'] sd.curVal = sdDict['curVal'] return sd
def toSensorDataFromJson(self, jsonData): sdDict = json.loads(jsonData) sd = SensorData() sd.name = sdDict['name'] sd.timeStamp = sdDict['timeStamp'] sd.avgValue = sdDict['avgValue'] sd.minValue = sdDict['minValue'] sd.maxValue = sdDict['maxValue'] sd.curValue = sdDict['curValue'] sd.totValue = sdDict['totValue'] sd.sampleCount = sdDict['sampleCount'] return sd
def jsonTosensor(self,jsonData): sensedataDict = json.loads(jsonData) print(" decode [pre] --> " + str(sensedataDict)) sensedata = SensorData('Temperature',0,30) sensedata.name = sensedataDict['name'] sensedata.timeStamp = sensedataDict['timeStamp'] sensedata.avgVal = sensedataDict['avgVal'] sensedata.minVal = sensedataDict['minVal'] sensedata.maxVal = sensedataDict['maxVal'] sensedata.curVal = sensedataDict['curVal'] sensedata.totValue = sensedataDict['totValue'] sensedata.sampleCount = sensedataDict['sampleCount'] print(" decode [post] --> " + str(sensedata)) return sensedata
def jsonToSensorData(self, jsonData): sdDict = json.loads(jsonData) #print(" decode [pre] --> " + str(sdDict)) sd = SensorData("Temperature Sensor", 0.0, 30.0) sd.name = sdDict['name'] sd.timeStamp = sdDict['time'] sd.avgValue = sdDict['avgValue'] sd.minValue = sdDict['minValue'] sd.maxValue = sdDict['maxValue'] sd.curValue = sdDict['curValue'] #print(" decode [post] --> " + str(sd)) return sd
def toSensorDataFromJson(self,jsonData): sdDict = json.loads(jsonData) print(" decode [pre] --> " + str(sdDict)) sd = SensorData() sd.name = sdDict['name'] sd.timeStamp = sdDict['timeStamp'] sd.avgValue = sdDict['avgValue'] sd.minValue = sdDict['minValue'] sd.maxValue = sdDict['maxValue'] sd.curValue = sdDict['curValue'] sd.totValue = sdDict['totValue'] sd.sampleCount = sdDict['sampleCount'] print(" decode [post] --> " + str(sd)) return sd
def toSensorDataFromJson(self, jsonStr) -> SensorData: #instantiate SensorData sensorData = SensorData() #use json load to convert it to a dictionary jsonLoad = json.loads(jsonStr) #parse and add it to the sensorData object one by one sensorData.currentValue = jsonLoad["currentValue"] sensorData.average = jsonLoad["average"] sensorData.totalCount = jsonLoad["totalCount"] sensorData.minValue = jsonLoad["minValue"] sensorData.maxValue = jsonLoad["maxValue"] sensorData.totalValue = jsonLoad["totalValue"] sensorData.sensorName = jsonLoad["sensorName"] sensorData.timeStamp = jsonLoad["timestamp"] #return the SensorData reference return sensorData