alterNERDtive
afde1c4ca2
somehow our test planet is now appearing as tidally locked in the database when it wasn’t before; even though orbital period is still ≠ rotational period.
127 lines
5.6 KiB
Python
127 lines
5.6 KiB
Python
import unittest
|
||
from . import exception
|
||
from .systemApi import Bodies
|
||
|
||
class BodiesTest(unittest.TestCase):
|
||
|
||
def test_getBodies_HD43193(self):
|
||
json = Bodies.getBodies("HD 43193")
|
||
|
||
# system data
|
||
self.assertEqual(85920, json['id'])
|
||
self.assertEqual("HD 43193", json['name'])
|
||
|
||
# body count
|
||
self.assertEqual(17, len(json['bodies']))
|
||
|
||
# star
|
||
star = json['bodies'][0]
|
||
self.assertEqual(219074, star['id'])
|
||
self.assertEqual("HD 43193 A", star['name'])
|
||
self.assertEqual("Star", star['type'])
|
||
self.assertEqual("B (Blue-White) Star", star['subType'])
|
||
self.assertEqual(0, star['distanceToArrival'])
|
||
self.assertTrue(star['isMainStar'])
|
||
self.assertTrue(star['isScoopable'])
|
||
self.assertEqual(760, star['age'])
|
||
self.assertEqual("V", star['luminosity'])
|
||
self.assertEqual(0.443283, star['absoluteMagnitude'])
|
||
self.assertEqual(14.5625, star['solarMasses'])
|
||
self.assertEqual(5.3612057397555715, star['solarRadius'])
|
||
self.assertEqual(30995, star['surfaceTemperature'])
|
||
self.assertEqual(277.5355324074074, star['orbitalPeriod'])
|
||
self.assertEqual(0.4615586345240675, star['semiMajorAxis'])
|
||
self.assertEqual(0.275417, star['orbitalEccentricity'])
|
||
self.assertEqual(73.390816, star['orbitalInclination'])
|
||
self.assertEqual(23.460678, star['argOfPeriapsis'])
|
||
self.assertEqual(2.2797341579861112, star['rotationalPeriod'])
|
||
self.assertFalse(star['rotationalPeriodTidallyLocked'])
|
||
self.assertEqual(None, star['axialTilt'])
|
||
|
||
# planet
|
||
planet = json['bodies'][15]
|
||
self.assertEqual(311417, planet['id'])
|
||
self.assertEqual("HD 43193 CD 7 a", planet['name'])
|
||
self.assertEqual("Planet", planet['type'])
|
||
self.assertEqual("Class IV gas giant", planet['subType'])
|
||
# self.assertEqual(17963, planet['distanceToArrival']) # this sadly varies due to orbiting …
|
||
self.assertFalse(planet['isLandable'])
|
||
self.assertEqual(11.175634423255477, planet['gravity'])
|
||
self.assertEqual(1574.405762, planet['earthMasses'])
|
||
self.assertEqual(75701.896, planet['radius'])
|
||
self.assertEqual(1021, planet['surfaceTemperature'])
|
||
self.assertEqual("No volcanism", planet['volcanismType'])
|
||
self.assertEqual("No atmosphere", planet['atmosphereType'])
|
||
self.assertEqual("Not terraformable", planet['terraformingState'])
|
||
self.assertEqual(55.31602430555556, planet['orbitalPeriod'])
|
||
self.assertEqual(0.11103302421536405, planet['semiMajorAxis'])
|
||
self.assertEqual(None, planet['orbitalEccentricity'])
|
||
self.assertEqual(28.739708, planet['orbitalInclination'])
|
||
self.assertEqual(248.851364, planet['argOfPeriapsis'])
|
||
self.assertEqual(57.64743634259259, planet['rotationalPeriod'])
|
||
self.assertTrue(planet['rotationalPeriodTidallyLocked'])
|
||
self.assertEqual(0.198277, planet['axialTilt'])
|
||
|
||
def test_getBodiesById_HD43193(self):
|
||
json = Bodies.getBodiesById(85920)
|
||
|
||
# system data
|
||
self.assertEqual(85920, json['id'])
|
||
self.assertEqual("HD 43193", json['name'])
|
||
|
||
# body count
|
||
self.assertEqual(17, len(json['bodies']))
|
||
|
||
# star
|
||
star = json['bodies'][0]
|
||
self.assertEqual(219074, star['id'])
|
||
self.assertEqual("HD 43193 A", star['name'])
|
||
self.assertEqual("Star", star['type'])
|
||
self.assertEqual("B (Blue-White) Star", star['subType'])
|
||
self.assertEqual(0, star['distanceToArrival'])
|
||
self.assertTrue(star['isMainStar'])
|
||
self.assertTrue(star['isScoopable'])
|
||
self.assertEqual(760, star['age'])
|
||
self.assertEqual("V", star['luminosity'])
|
||
self.assertEqual(0.443283, star['absoluteMagnitude'])
|
||
self.assertEqual(14.5625, star['solarMasses'])
|
||
self.assertEqual(5.3612057397555715, star['solarRadius'])
|
||
self.assertEqual(30995, star['surfaceTemperature'])
|
||
self.assertEqual(277.5355324074074, star['orbitalPeriod'])
|
||
self.assertEqual(0.4615586345240675, star['semiMajorAxis'])
|
||
self.assertEqual(0.275417, star['orbitalEccentricity'])
|
||
self.assertEqual(73.390816, star['orbitalInclination'])
|
||
self.assertEqual(23.460678, star['argOfPeriapsis'])
|
||
self.assertEqual(2.2797341579861112, star['rotationalPeriod'])
|
||
self.assertFalse(star['rotationalPeriodTidallyLocked'])
|
||
self.assertEqual(None, star['axialTilt'])
|
||
|
||
# planet
|
||
planet = json['bodies'][15]
|
||
self.assertEqual(311417, planet['id'])
|
||
self.assertEqual("HD 43193 CD 7 a", planet['name'])
|
||
self.assertEqual("Planet", planet['type'])
|
||
self.assertEqual("Class IV gas giant", planet['subType'])
|
||
# self.assertEqual(17963, planet['distanceToArrival']) # this sadly varies due to orbiting …
|
||
self.assertFalse(planet['isLandable'])
|
||
self.assertEqual(11.175634423255477, planet['gravity'])
|
||
self.assertEqual(1574.405762, planet['earthMasses'])
|
||
self.assertEqual(75701.896, planet['radius'])
|
||
self.assertEqual(1021, planet['surfaceTemperature'])
|
||
self.assertEqual("No volcanism", planet['volcanismType'])
|
||
self.assertEqual("No atmosphere", planet['atmosphereType'])
|
||
self.assertEqual("Not terraformable", planet['terraformingState'])
|
||
self.assertEqual(55.31602430555556, planet['orbitalPeriod'])
|
||
self.assertEqual(0.11103302421536405, planet['semiMajorAxis'])
|
||
self.assertEqual(None, planet['orbitalEccentricity'])
|
||
self.assertEqual(28.739708, planet['orbitalInclination'])
|
||
self.assertEqual(248.851364, planet['argOfPeriapsis'])
|
||
self.assertEqual(57.64743634259259, planet['rotationalPeriod'])
|
||
self.assertTrue(planet['rotationalPeriodTidallyLocked'])
|
||
self.assertEqual(0.198277, planet['axialTilt'])
|
||
|
||
def test_wonkySystemNames(self):
|
||
Bodies.getBodies("BD+49 1280")
|
||
# FIXXME: I remember finding a system with “[]” in the name, but can’t
|
||
# remember … and the search function in the usual tools aren’t very helpful
|
||
# :)
|