def test_4_StarSensor_ServiceRequest(self):
     s = StarSensor(.1)
     if (s.serviceRequest() == None):
         print('Test 4.1 StarSensor.ServiceRequest(): PASSED: Returned None when null environment object')
     else:
         print('Test 4.1 StarSensor.ServiceRequest(): FAILED: Didnt return None when null environment object')
     e = Environment()
     e.setRotationalPeriod(40000000)
     s.configure(e)
     print(s.serviceRequest())
Example #2
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')
Example #3
0
 def test400_020_ShouldCalculateMagnitudeHexValueInitiallyWithDifferentFOV(
         self):
     myEnv = Environment.Environment()
     myEnv.setRotationalPeriod(1000000)
     mySensor = StarSensor.StarSensor(0.034906585)
     mySensor.initializeSensor(starFile="SaoChart.txt")
     mySensor.configure(myEnv)
     self.assertEquals(mySensor.serviceRequest(), '0035')
Example #4
0
 def test600_010_ShouldCalculateRAAndDECOfSensor(self):
     myEnv = Environment.Environment()
     myEnv.setRotationalPeriod(1000000)
     mySensor = StarSensor.StarSensor(0.034906585)
     mySensor.initializeSensor(starFile="SaoChart.txt")
     mySensor.configure(myEnv)
     output = [1.5707963267948966, 0.0]
     self.assertEquals(mySensor.getSensorPosition(), output)
Example #5
0
 def test400_050_ShouldCalculateMagnitudeHexValueAtEighteenthHour(self):
     myEnv = Environment.Environment()
     myEnv.setRotationalPeriod(1000000)
     myEnv.incrementTime(microseconds=43200000000 + 21600000000)
     mySensor = StarSensor.StarSensor(0.034906585)
     mySensor.initializeSensor(starFile="SaoChart.txt")
     mySensor.configure(myEnv)
     self.assertEquals(mySensor.serviceRequest(), '8000')
Example #6
0
 def test400_010_ShouldRunServiceRequest(self):
     myMonitor = Monitor.Monitor()
     env = Environment.Environment()
     env.setRotationalPeriod(1000000)
     myMonitor.configure(env)
     myMonitor.initialize(logFile="logfile.txt")
     self.assertEquals(
         myMonitor.serviceRequest(source="Controller", target="Device"), 0)
Example #7
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')
Example #8
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')
Example #9
0
 def test600_020_ShouldCalculateRAAndDECOfSensorAtTwelthHour(self):
     myEnv = Environment.Environment()
     myEnv.setRotationalPeriod(1000000)
     myEnv.incrementTime(microseconds=43200000000)
     mySensor = StarSensor.StarSensor(0.034906585)
     mySensor.initializeSensor(starFile="SaoChart.txt")
     mySensor.configure(myEnv)
     output = [4.71238898038469, 0.0]
     self.assertEquals(mySensor.getSensorPosition(), output)
Example #10
0
 def test400_910ShouldRaiseExceptionOnMissingInitialization(self):
     with self.assertRaises(ValueError) as context:
         myMonitor = Monitor.Monitor()
         env = Environment.Environment()
         env.setRotationalPeriod(1000000)
         myMonitor.configure(env)
         self.assertEquals(
             myMonitor.serviceRequest(source="Controller", target="Device"),
             0)
Example #11
0
 def test300_010_ShouldGenerateZeroWith25PercentPrabability(self):
     myDevice = Device.Device()
     env = Environment.Environment()
     env.setRotationalPeriod(1000000)
     myDevice.configure(env)
     result = []
     for _ in range(100000):
         result.append(myDevice.serviceRequest())
     output = (float)(result.count('0000')) / len(result)
     self.assertAlmostEquals(output, 0.250000000000000, 2)
 def test_5_StarSensor_getSensorPosition(self):
     import math
     s = StarSensor(.1)
     e = Environment()
     s.configure(e)
     try:
         s.getSensorPosition()
         print('Test 5.1 StarSensor.getSensorPosition: FAILED: Threw Error when null rotationalTime')
     except:
         print('Test 5.1 StarSensor.getSensorPosition: PASSED: Threw Error when null rotationalTime')
     e = Environment()
     e.setRotationalPeriod(4000000)
     s.configure(e)
     list = s.getSensorPosition()
     if (list[0] == 2.0*math.pi and list[1] == 0):
         print('Test 5.2 StarSensor.getSensorPosition: PASSED: returned correct value when time == 0')
     else:
         print('Test 5.2 StarSensor.getSensorPosition: PASSED: returned correct value when time == 0')
     e.incrementTime(40)
     s.configure(e)
     list = s.getSensorPosition()
     if (list[0] >= -2*math.pi and list[1] >= -2*math.pi):
         print('Test 5.3 StarSensor.getSensorPosition: PASSED: returned correct value when running normally')
     else:
         print('Test 5.3 StarSensor.getSensorPosition: FAILED: returned incorrect value when running normally')
 def test_8_Environment_getRotationalPeriod(self):
     e = Environment()
     try:
         e.getRotationalPeriod()
         print('Test 8.1 Environment.setRotationPeriod(): FAILED: didnt throw exception for invalid rotationalperiod')
     except:
         print('Test 8.1 Environment.setRotationPeriod(): PASSED: threw exception for invalid rotationalperiod')
     e.setRotationalPeriod(4000000)
     if (e.getRotationalPeriod() == 4000000):
         print('Test 8.2 Environment.setRotationPeriod(): PASSED: worked correctly')
     else:
         print('Test 8.2 Environment.setRotationPeriod(): FAILED: worked incorrectly')
 def test_7_Environment_setRotationalPeriod(self):
     e = Environment()
     try:
         e.setRotationalPeriod('hi')
         print('Test 7.1 Environment.setRotationPeriod(): FAILED: didnt fail after passed string')
     except:
         print('Test 7.1 Environment.setRotationPeriod(): PASSED: threw exception when passed string')
     try:
         e.setRotationalPeriod(40)
         print('Test 7.2 Environment.setRotationPeriod(): FAILED: didnt fail after passing incorrect value')
     except:
         print('Test 7.2 Environment.setRotationPeriod(): PASSED: threw exception when passed incorrect value')
     if (e.setRotationalPeriod(4000000) == 4000000):
         print('Test 7.3 Environment.setRotationPeriod(): PASSED: returned correct value when passed good value')
     else:
         print('Test 7.3 Environment.setRotationPeriod(): FAILED: returned incorrect value when passed good value')
 def test_6_Environment_incrementTime(self):
     e = Environment()
     try:
         e.incrementTime('hi')
         print('Test 6.1 Environment.incrementTime(): FAILED: didnt throw error when incrementing by string')
     except:
         print('Test 6.1 Environment.incrementTime(): PASSED: threw error when incrementing by string')
     try:
         e.incrementTime(-1)
         print('Test 6.2 Environment.incrementTime(): FAILED: didnt throw error when incrementing by negative number')
     except:
         print('Test 6.2 Environment.incrementTime(): PASSED: threw error when incrementing by negative number')
     if (e.incrementTime(40) == 40):
         print('Test 6.3 Environment.incrementTime(): PASSED: worked Normally')
     else:
         print('Test 6.3 Environment.incrementTime(): FAILED: didnt work normally')
     if (e.getTime() == 40):
         print('Test 6.4 Environment.incrementTime()/getTime(): PASSED')
     else:
         print('Test 6.4 Environment.incrementTime()/getTime(): FAILED')
Example #16
0
 def test400_920_ShouldRaiseExceptionOnRotationalPeriodLessThanMillion(
         self):
     with self.assertRaises(ValueError) as context:
         myEnv = Environment.Environment()
         myEnv.setRotationalPeriod(999999)
Example #17
0
 def test400_910_ShouldRaiseExceptionOnRotationalPeriodInFloat(self):
     with self.assertRaises(ValueError) as context:
         myEnv = Environment.Environment()
         myEnv.setRotationalPeriod(10000001.00)
Example #18
0
 def test400_020_ShouldSetAndReturnRotationalPeriodBoundaryCase(self):
     myEnv = Environment.Environment()
     self.assertEquals(myEnv.setRotationalPeriod(1000000), 1000000)
Example #19
0
 def test400_010_ShouldSetAndReturnRotationalPeriod(self):
     myEnv = Environment.Environment()
     self.assertEquals(myEnv.setRotationalPeriod(1000001), 1000001)
Example #20
0
 def test300_930_ShouldRaiseExceptionOnTimeAbsent(self):
     with self.assertRaises(ValueError) as context:
         myEnv = Environment.Environment()
         myEnv.incrementTime()
Example #21
0
 def test300_920_ShouldRaiseExceptionOnTimeLessThanZero(self):
     with self.assertRaises(ValueError) as context:
         myEnv = Environment.Environment()
         myEnv.incrementTime(-1)
Example #22
0
 def test300_010_ShouldReturnIncrementTimeOfSimulatedClock(self):
     myEnv = Environment.Environment()
     self.assertEquals(myEnv.incrementTime(10000000), 10000000)
Example #23
0
 def test200_020_ShouldReturnCurrentTimeOfSimulatedClockAfterIncrement(
         self):
     myEnv = Environment.Environment()
     myEnv.incrementTime(10000000)
     self.assertEquals(myEnv.getTime(), 10000000)
Example #24
0
 def test200_010_ShouldReturnCurrentTimeOfSimulatedClock(self):
     myEnv = Environment.Environment()
     self.assertEquals(myEnv.getTime(), 0)
Example #25
0
 def test100_010_ShouldConstruct(self):
     self.assertIsInstance(Environment.Environment(),
                           Environment.Environment)
Example #26
0
 def test700_930_ShouldRaiseExceptionOnDegradationFloat(self):
     with self.assertRaises(ValueError) as context:
         myEnv = Environment.Environment()
         myEnv.setDegradation(50.50)
Example #27
0
 def test600_910_ShouldRaiseExceptionOnStartTimeLessThanZero(self):
     with self.assertRaises(ValueError) as context:
         myEnv = Environment.Environment()
         myEnv.setStartTime(-1)
Example #28
0
 def test500_910_ShouldRaiseExceptionOnRotationalPeriodAbsent(self):
     with self.assertRaises(ValueError) as context:
         myEnv = Environment.Environment()
         myEnv.getRotationalPeriod()
Example #29
0
 def test500_010_ShouldGetRotationalPeriod(self):
     myEnv = Environment.Environment()
     myEnv.setRotationalPeriod(1000001)
     self.assertEquals(myEnv.getRotationalPeriod(), 1000001)
Example #30
0
 def test500_020_ShouldGetRotationalPeriodBoundaryCase(self):
     myEnv = Environment.Environment()
     myEnv.setRotationalPeriod(1000000)
     self.assertEquals(myEnv.getRotationalPeriod(), 1000000)
Example #31
0
 def test700_030_ShouldSetAndReturnDegradation(self):
     myEnv = Environment.Environment()
     self.assertEquals(myEnv.setDegradation(50), 50)
Example #32
0
 def test600_010_ShouldSetAndReturnStartTime(self):
     myEnv = Environment.Environment()
     self.assertEquals(myEnv.setStartTime(500), 500)
Example #33
0
 def test700_910_ShouldRaiseExceptionOnDegradationLessThanZero(self):
     with self.assertRaises(ValueError) as context:
         myEnv = Environment.Environment()
         myEnv.setDegradation(-1)
Example #34
0
 def test600_920_ShouldRaiseExceptionOnStartTimeFloat(self):
     with self.assertRaises(ValueError) as context:
         myEnv = Environment.Environment()
         myEnv.setStartTime(500.50)
Example #35
0
 def test700_920_ShouldRaiseExceptionOnDegradationGT100(self):
     with self.assertRaises(ValueError) as context:
         myEnv = Environment.Environment()
         myEnv.setDegradation(101)