annotate gamelib/tests/test_lab.py @ 17:10d3db1f1e08

Set up initial research and rework breakthroughs.
author Jeremy Thurgood <firxen@gmail.com>
date Sun, 06 May 2012 17:39:37 +0200
parents 9d61abb3cfaf
children 718d1ec382f7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8
967480d228b6 Some not-really-tests.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
1 from unittest import TestCase
967480d228b6 Some not-really-tests.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
2
967480d228b6 Some not-really-tests.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
3 from gamelib.lab import Lab
14
9d61abb3cfaf Better subclass handling.
Jeremy Thurgood <firxen@gmail.com>
parents: 8
diff changeset
4 from gamelib import research, products
8
967480d228b6 Some not-really-tests.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
5
967480d228b6 Some not-really-tests.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
6
967480d228b6 Some not-really-tests.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
7 class TestLab(TestCase):
14
9d61abb3cfaf Better subclass handling.
Jeremy Thurgood <firxen@gmail.com>
parents: 8
diff changeset
8 def setUp(self):
9d61abb3cfaf Better subclass handling.
Jeremy Thurgood <firxen@gmail.com>
parents: 8
diff changeset
9 self.lab = Lab()
9d61abb3cfaf Better subclass handling.
Jeremy Thurgood <firxen@gmail.com>
parents: 8
diff changeset
10
8
967480d228b6 Some not-really-tests.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
11 def test_find_new_products(self):
17
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
12 # Set up the appropriate research.
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
13 if research.Tesla in self.lab.new_research:
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
14 self.lab._gain_science(research.Tesla(1))
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
15 self.lab._get_science(research.Tesla).points += 2
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
16 # Check breakthrough options.
14
9d61abb3cfaf Better subclass handling.
Jeremy Thurgood <firxen@gmail.com>
parents: 8
diff changeset
17 new_products = self.lab.find_new_products(None)
17
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
18 self.assertTrue(products.TeslaTank in new_products)
14
9d61abb3cfaf Better subclass handling.
Jeremy Thurgood <firxen@gmail.com>
parents: 8
diff changeset
19 self.assertTrue(products.DoomsdayVirus not in new_products)
8
967480d228b6 Some not-really-tests.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
20
967480d228b6 Some not-really-tests.
Jeremy Thurgood <firxen@gmail.com>
parents:
diff changeset
21 def test_find_new_research(self):
17
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
22 # Set up the appropriate research.
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
23 if research.Robotics in self.lab.new_research:
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
24 self.lab._gain_science(research.Robotics(1))
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
25 if research.Rocketry in self.lab.new_research:
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
26 self.lab._gain_science(research.Rocketry(1))
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
27 self.lab._get_science(research.Rocketry).points += 1
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
28 # Check breakthrough options.
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
29 new_research = self.lab.find_new_research()
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
30 self.assertTrue(research.Space in new_research)
10d3db1f1e08 Set up initial research and rework breakthroughs.
Jeremy Thurgood <firxen@gmail.com>
parents: 14
diff changeset
31 self.assertTrue(research.ArtificialIntelligence not in new_research)