def test_tech_level(self): '''Test tech level results''' planet = Planet() for starport in 'ABCX': for siz in '01234': for atm in '0123ABCDEF': for hyd in '9A': for pop in '123459A': for gov in '05D': planet.starport = starport planet.size = upp.Size(siz) planet.atmosphere = upp.Atmosphere(atm) planet.hydrographics = upp.Hydrographics(hyd) planet.population = upp.Population(pop) planet.government = upp.Government(gov) planet.determine_tech() starport_dm =\ self._starport_dm(planet.starport) siz_dm = self._size_dm(str(planet.size)) atm_dm = self._atm_dm(str(planet.atmosphere)) hyd_dm = self._hyd_dm(str( planet.hydrographics)) pop_dm = self._pop_dm(str(planet.population)) gov_dm = self._gov_dm(str(planet.government)) print( 'port: {} siz: {} atm: {} hyd: {} pop: {} gov: {}' .format(starport_dm, siz_dm, atm_dm, hyd_dm, pop_dm, gov_dm)) tl_dm = starport_dm + siz_dm + atm_dm + hyd_dm tl_dm = tl_dm + pop_dm + gov_dm tech_level = int(planet.tech_level) print('upp: {} TL: {} TL DM: {}'.format( str(planet), tech_level, tl_dm)) self.assertTrue(tech_level - tl_dm in range(1, 7))
def test_not_ba(self): '''Test !Ba''' for pop in '123456789A': for gov in '123456789AB': for law in '123456789A': # Assume the rest are OK for tech in '123456': # Assume the rest are OK for starport in 'ABCD': planet = Planet() planet.starport = starport planet.population = uwp.Population(pop) planet.government = uwp.Government(gov) planet.law_level = uwp.LawLevel(law) planet.tech_level = uwp.TechLevel(tech) self.assertFalse('Ba' in gen_trade_codes(planet))