def test300_010_ShouldRunWithEnvironmentReturningZero(self): mySc = SolarCollector.SolarCollector() env = Environment.Environment() env.setRotationalPeriod(1000000) env.setDegradation(50) mySc.configure(env) self.assertEquals(mySc.serviceRequest(), '0000')
def test300_040_ShouldRunWithinLowerBoundReturningZero(self): mySc = SolarCollector.SolarCollector() env = Environment.Environment() env.setRotationalPeriod(1000000) env.setDegradation(50) env.incrementTime(23 * 60 * 60 * 1000000 + 37 * 60 * 1000000) mySc.configure(env) self.assertEquals(mySc.serviceRequest(), '0000')
def test300_030_ShouldRunOutsideUpperBoundReturningZero(self): mySc = SolarCollector.SolarCollector() env = Environment.Environment() env.setRotationalPeriod(1000000) env.setDegradation(50) env.incrementTime(10 * 60 * 60 * 1000000) mySc.configure(env) self.assertEquals(mySc.serviceRequest(), '3fff')
def test300_910_ShouldNotRunWithoutConfiguration(self): with self.assertRaises(ValueError) as context: mySc = SolarCollector.SolarCollector() mySc.serviceRequest()
def test200_920ShouldRaiseExceptionOnPassingNonEnvironmentInstance(self): with self.assertRaises(ValueError) as context: mySc = SolarCollector.SolarCollector() env = 2 mySc.configure(env)
def test200_910ShouldRaiseExceptionOnMissingEnvironment(self): with self.assertRaises(ValueError) as context: mySc = SolarCollector.SolarCollector() mySc.configure()
def test200_010_ShouldConfigureWithEnvironment(self): mySc = SolarCollector.SolarCollector() env = Environment.Environment() env.setRotationalPeriod(1000000) self.assertEquals(mySc.configure(env), True)
def test100_010_ShouldConstruct(self): self.assertIsInstance(SolarCollector.SolarCollector(), SolarCollector.SolarCollector)
def getComponent(self): if (self.component['component'] == "Environment"): self.instance = Environment.Environment() parms = self.component['parms'] if len(parms) == 0: raise ValueError( "Controller.initialize: Environment requires additional information." ) for parm in parms: if (str(parm['name']) == 'rotationalPeriod') and (parm['value'] != None): self.instance.setRotationalPeriod((int)(parm['value'])) elif (str(parm['name']) == 'startTime') and (parm['value'] != None): self.instance.setStartTime((int)(parm['value'])) elif (str(parm['name']) == 'degradation') and (parm['value'] != None): self.instance.setDegradation((int)(parm['value'])) else: raise ValueError( "Controller.initialize: Environment requires additional information." ) return self.instance elif (self.component['component'] == "Monitor"): self.instance = Monitor.Monitor() parms = self.component['parms'] if len(parms) == 0: raise ValueError( "Controller.initialize: Monitor requires additional information." ) for parm in parms: if (str(parm['name']) == 'logFile'): self.instance.initialize(str(parm['value'])) else: raise ValueError( "Controller.initialize: Monitor requires additional information." ) return self.instance elif (self.component['component'] == "StarSensor"): parms = self.component['parms'] if len(parms) != 2: raise ValueError( "Controller.initialize: StarSensor requires additional information." ) for parm in parms: if (str(parm['name']) == 'fieldOfView'): self.instance = StarSensor.StarSensor( (float)(parm['value'])) elif (str(parm['name']) == 'starFile'): pass else: raise ValueError( "Controller.initialize: StarSensor requires additional information." ) for parm in parms: if (str(parm['name']) == 'starFile'): self.instance.initializeSensor(str(parm['value'])) elif (str(parm['name']) == 'fieldOfView'): pass else: raise ValueError( "Controller.initialize: StarSensor requires additional information." ) return self.instance elif (self.component['component'] == "Device"): self.instance = Device.Device() return self.instance elif (self.component['component'] == "SolarCollector"): self.instance = SolarCollector.SolarCollector() return self.instance else: raise ValueError( "Controller.initialize: The device(s) mentioned in XML is incorrect." )