Esempio n. 1
0
 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')
Esempio n. 2
0
 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')
Esempio n. 3
0
 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')
Esempio n. 4
0
 def test300_910_ShouldNotRunWithoutConfiguration(self):
     with self.assertRaises(ValueError) as context:
         mySc = SolarCollector.SolarCollector()
         mySc.serviceRequest()
Esempio n. 5
0
 def test200_920ShouldRaiseExceptionOnPassingNonEnvironmentInstance(self):
     with self.assertRaises(ValueError) as context:
         mySc = SolarCollector.SolarCollector()
         env = 2
         mySc.configure(env)
Esempio n. 6
0
 def test200_910ShouldRaiseExceptionOnMissingEnvironment(self):
     with self.assertRaises(ValueError) as context:
         mySc = SolarCollector.SolarCollector()
         mySc.configure()
Esempio n. 7
0
 def test200_010_ShouldConfigureWithEnvironment(self):
     mySc = SolarCollector.SolarCollector()
     env = Environment.Environment()
     env.setRotationalPeriod(1000000)
     self.assertEquals(mySc.configure(env), True)
Esempio n. 8
0
 def test100_010_ShouldConstruct(self):
     self.assertIsInstance(SolarCollector.SolarCollector(),
                           SolarCollector.SolarCollector)
Esempio n. 9
0
    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."
            )