def test_region_autocapital(self): """A region that's a capital is automatically owned by the same team""" cap = Region.capital_for(0, self.sess) self.assertEqual(cap.capital, cap.owner) cap = Region.capital_for(1, self.sess) self.assertEqual(cap.capital, cap.owner)
def test_region_autocapital(self): """A region that's a capital is automatically owned by the same team""" cap = Region.capital_for(0, self.sess) self.assertEqual(cap.capital, cap.owner) cap = Region.capital_for(1, self.sess) self.assertEqual(cap.capital, cap.owner)
def create_user(self, name, team): newbie = User(name=name, team=team, loyalists=100, leader=True) self.sess.add(newbie) cap = Region.capital_for(team, self.sess) newbie.region = cap self.sess.commit() return newbie
def test_extract_cancels_movement(self): """Emergency movement shouldn't rubberband""" sess = self.sess cap = Region.capital_for(0, sess) # Move Alice somewhere else londo = self.get_region("Orange Londo") self.alice.move(100, londo, 0) # Should be in londo self.assertEqual(self.alice.region, londo) # Bloodless coup of Sapphire sapp = self.get_region("Sapphire") sapp.owner = self.alice.team sess.commit() # Start wandering that way order = self.alice.move(100, sapp, 60 * 60 * 24) self.assert_(order) orders = self.sess.query(MarchingOrder).count() self.assertEqual(orders, 1) self.alice.extract() self.assertEqual(self.alice.region, cap) orders = self.sess.query(MarchingOrder).count() self.assertEqual(orders, 0) # Make sure she ended up in a sector self.assertTrue(self.alice.sector)
def test_stop_cancels_movement(self): """Stopping movement should actually, you know, stop movement""" sess = self.sess cap = Region.capital_for(0, sess) # Move Alice somewhere else londo = self.get_region("Orange Londo") self.alice.move(100, londo, 0) # Should be in londo self.assertEqual(self.alice.region, londo) # Bloodless coup of Sapphire sapp = self.get_region("Sapphire") sapp.owner = self.alice.team sess.commit() # Start wandering that way order = self.alice.move(100, sapp, 60 * 60 * 24) self.assert_(order) orders = self.sess.query(MarchingOrder).count() self.assertEqual(orders, 1) self.alice.cancel_movement() self.assertEqual(self.alice.region, londo) orders = self.sess.query(MarchingOrder).count() self.assertEqual(orders, 0)
def create_user(self, name, team): newbie = User(name=name, team=team, loyalists=100, leader=True) self.sess.add(newbie) cap = Region.capital_for(team, self.sess) newbie.region = cap self.sess.commit() return newbie
def test_stop_cancels_movement(self): """Stopping movement should actually, you know, stop movement""" sess = self.sess cap = Region.capital_for(0, sess) # Move Alice somewhere else londo = self.get_region("Orange Londo") self.alice.move(100, londo, 0) # Should be in londo self.assertEqual(self.alice.region, londo) # Bloodless coup of Sapphire sapp = self.get_region("Sapphire") sapp.owner = self.alice.team sess.commit() # Start wandering that way order = self.alice.move(100, sapp, 60 * 60 * 24) self.assert_(order) orders = self.sess.query(MarchingOrder).count() self.assertEqual(orders, 1) self.alice.cancel_movement() self.assertEqual(self.alice.region, londo) orders = self.sess.query(MarchingOrder).count() self.assertEqual(orders, 0)
def test_extract_cancels_movement(self): """Emergency movement shouldn't rubberband""" sess = self.sess cap = Region.capital_for(0, sess) # Move Alice somewhere else londo = self.get_region("Orange Londo") self.alice.move(100, londo, 0) # Should be in londo self.assertEqual(self.alice.region, londo) # Bloodless coup of Sapphire sapp = self.get_region("Sapphire") sapp.owner = self.alice.team sess.commit() # Start wandering that way order = self.alice.move(100, sapp, 60 * 60 * 24) self.assert_(order) orders = self.sess.query(MarchingOrder).count() self.assertEqual(orders, 1) self.alice.extract() self.assertEqual(self.alice.region, cap) orders = self.sess.query(MarchingOrder).count() self.assertEqual(orders, 0) # Make sure she ended up in a sector self.assertTrue(self.alice.sector)
def test_sector_movement(self): self.conf["game"]["num_sectors"] = 7 sess = self.sess cap = Region.capital_for(0, sess) self.assertEqual(self.alice.region.id, cap.id) londo = self.get_region("Orange Londo") self.assertIsNotNone(londo) self.alice.move(100, londo, 0, sector=3, conf=self.conf)
def test_sector_movement(self): self.conf["game"]["num_sectors"] = 7 sess = self.sess cap = Region.capital_for(0, sess) self.assertEqual(self.alice.region.id, cap.id) londo = self.get_region("Orange Londo") self.assertIsNotNone(londo) self.alice.move(100, londo, 0, sector=3, conf=self.conf)
def test_movement(self): """Move Alice from the Orangered capital to an adjacent region""" sess = self.sess cap = Region.capital_for(0, sess) # First of all, make sure alice is actually there self.assertEqual(self.alice.region.id, cap.id) londo = self.get_region("Orange Londo") self.assertIsNotNone(londo) self.alice.move(100, londo, 0) # Now she should be there self.assertEqual(self.alice.region.id, londo.id)
def test_movement(self): """Move Alice from the Orangered capital to an adjacent region""" sess = self.sess cap = Region.capital_for(0, sess) # First of all, make sure alice is actually there self.assertEqual(self.alice.region.id, cap.id) londo = self.get_region("Orange Londo") self.assertIsNotNone(londo) self.alice.move(100, londo, 0) # Now she should be there self.assertEqual(self.alice.region.id, londo.id)
def test_extract(self): """Emergency movement back to capital""" sess = self.sess cap = Region.capital_for(0, sess) # Move Alice somewhere else londo = self.get_region("Orange Londo") self.alice.move(100, londo, 0) # Should be in londo self.assertEqual(self.alice.region, londo) # Emergency move! self.alice.extract() # Should be back in capital self.assertEqual(self.alice.region, cap)
def test_extract(self): """Emergency movement back to capital""" sess = self.sess cap = Region.capital_for(0, sess) # Move Alice somewhere else londo = self.get_region("Orange Londo") self.alice.move(100, londo, 0) # Should be in londo self.assertEqual(self.alice.region, londo) # Emergency move! self.alice.extract() # Should be back in capital self.assertEqual(self.alice.region, cap)
def main(): full = "sqlite:///%s" % realpath(sys.argv[1]) print full engine = create_engine(full) sessionfactory = sessionmaker(bind=engine) session = sessionfactory() with open(sys.argv[2], 'r') as f: text = f.read() print text j = json.loads(text) for user in j: u = User(**user) u.region = Region.capital_for(u.team, session) session.add(u) print "Imported %s" % u.name session.commit()
def test_default_sector_movement(self): self.conf["game"]["num_sectors"] = 7 # Alice should be in sector 0 by default self.assertEqual(self.alice.sector, 0) sess = self.sess cap = Region.capital_for(0, sess) self.assertEqual(self.alice.region.id, cap.id) londo = self.get_region("Orange Londo") self.assertIsNotNone(londo) # This seed means that it'll pick 5. I deliberately chose a seed that # would result in itself. random.seed(5) self.alice.move(100, londo, 0, conf=self.conf) self.assertEqual(self.alice.sector, 5)
def test_default_sector_movement(self): self.conf["game"]["num_sectors"] = 7 # Alice should be in sector 0 by default self.assertEqual(self.alice.sector, 0) sess = self.sess cap = Region.capital_for(0, sess) self.assertEqual(self.alice.region.id, cap.id) londo = self.get_region("Orange Londo") self.assertIsNotNone(londo) # This seed means that it'll pick 5. I deliberately chose a seed that # would result in itself. random.seed(5) self.alice.move(100, londo, 0, conf=self.conf) self.assertEqual(self.alice.sector, 5)