Beispiel #1
0
 def _check_same_seed(self, strategy):
     seed = 1111
     stage1 = Stage(name='uut1', selection_strategy=strategy, seed=seed)
     stage2 = Stage(name='uut2', selection_strategy=strategy, seed=seed)
     for template in self.templates:
         stage1.add_template(template)
         stage2.add_template(template)
     for _ in range(1000):
         self.assertEqual(stage1.mutate(), stage2.mutate())
Beispiel #2
0
 def test_random_strategy_random_length(self):
     stage = Stage(name='uut', selection_strategy='random', seed=1111)
     for template in self.templates:
         stage.add_template(template)
     sequences = set()
     iterations = 100
     for i in range(iterations):
         sequence = stage.mutate()
         sequences.add(len(sequence))
     self.assertGreater(len(sequences), iterations / 8)
Beispiel #3
0
 def get_stage_map(self):
     stages = {}
     for i in range(1, 4):
         s = Stage(str(i), str(i), 1234)
         for n in range(i):
             name = 't%d_%d' % (i, n)
             value = 'd%d_%d' % (i, n)
             s.add_template(Template(name=name, fields=[String(value)]))
         stages[s] = i
     return stages
Beispiel #4
0
 def testRandomStrategyRandomLength(self):
     stage = Stage(name='uut', selection_strategy='random', seed=1111)
     for template in self.templates:
         stage.add_template(template)
     sequences = set()
     iterations = 100
     for _ in range(iterations):
         sequence = stage.mutate()
         sequences.add(len(sequence))
     self.assertGreater(len(sequences), iterations // 8)
Beispiel #5
0
 def get_stage_map(self):
     stages = {}
     for i in range(1, 4):
         s = Stage(str(i), str(i), 1234)
         for n in range(i):
             name = 't%d_%d' % (i, n)
             value = 'd%d_%d' % (i, n)
             s.add_template(Template(name=name, fields=[String(value)]))
         stages[s] = i
     return stages
Beispiel #6
0
 def _check_randomness(self, templates, strategy):
     '''Check that different sequences are generated'''
     stage = Stage(name='uut', selection_strategy=strategy, seed=1111)
     for template in templates:
         stage.add_template(template)
     sequences = set()
     iterations = 100
     for i in range(iterations):
         sequence = tuple(stage.mutate())
         sequences.add(sequence)
     self.assertGreater(len(sequences), iterations / 2)
Beispiel #7
0
 def _check_different_seed(self, strategy):
     seed1 = 1111
     seed2 = 1112
     stage1 = Stage(name='uut1', selection_strategy=strategy, seed=seed1)
     stage2 = Stage(name='uut2', selection_strategy=strategy, seed=seed2)
     for template in self.templates:
         stage1.add_template(template)
         stage2.add_template(template)
     seqs1 = [stage1.mutate() for i in range(10)]
     seqs2 = [stage2.mutate() for i in range(10)]
     self.assertNotEqual(seqs1, seqs2)
Beispiel #8
0
 def _check_randomness(self, templates, strategy):
     '''Check that different sequences are generated'''
     stage = Stage(name='uut', selection_strategy=strategy, seed=1111)
     for template in templates:
         stage.add_template(template)
     sequences = set()
     iterations = 100
     for _ in range(iterations):
         sequence = tuple(stage.mutate())
         sequences.add(sequence)
     self.assertGreater(len(sequences), iterations // 2)
Beispiel #9
0
 def _check_strategy_length(self, selection_strategy, minl, maxl):
     stage = Stage(name='uut', selection_strategy=selection_strategy)
     templates = self.templates
     for template in templates:
         stage.add_template(template)
     for i in range(100):
         sequence = stage.mutate()
         sequence2 = stage.get_sequence_templates()
         self.assertEqual(sequence, sequence2)
         seql = len(sequence)
         self.assertGreaterEqual(seql, minl)
         self.assertLessEqual(seql, maxl)
         for template in sequence:
             self.assertIn(template, templates)
Beispiel #10
0
 def _check_same_seed(self, strategy):
     seed = 1111
     stage1 = Stage(name='uut1', selection_strategy=strategy, seed=seed)
     stage2 = Stage(name='uut2', selection_strategy=strategy, seed=seed)
     for template in self.templates:
         stage1.add_template(template)
         stage2.add_template(template)
     for i in range(1000):
         self.assertEqual(stage1.mutate(), stage2.mutate())
Beispiel #11
0
 def _check_different_seed(self, strategy):
     seed1 = 1111
     seed2 = 1112
     stage1 = Stage(name='uut1', selection_strategy=strategy, seed=seed1)
     stage2 = Stage(name='uut2', selection_strategy=strategy, seed=seed2)
     for template in self.templates:
         stage1.add_template(template)
         stage2.add_template(template)
     seqs1 = [stage1.mutate() for i in range(10)]
     seqs2 = [stage2.mutate() for i in range(10)]
     self.assertNotEqual(seqs1, seqs2)
Beispiel #12
0
 def _check_strategy_length(self, selection_strategy, minl, maxl):
     stage = Stage(name='uut', selection_strategy=selection_strategy)
     templates = self.templates
     for template in templates:
         stage.add_template(template)
     for _ in range(100):
         sequence = stage.mutate()
         sequence2 = stage.get_sequence_templates()
         self.assertEqual(sequence, sequence2)
         seql = len(sequence)
         self.assertGreaterEqual(seql, minl)
         self.assertLessEqual(seql, maxl)
         for template in sequence:
             self.assertIn(template, templates)
Beispiel #13
0
 def _check_exception_at_mutate(self, templates, selection_strategy, seed):
     s = Stage(name='uut', selection_strategy=selection_strategy)
     for t in templates:
         s.add_template(t)
     with self.assertRaises(KittyException):
         s.mutate()
Beispiel #14
0
 def _check_exception_at_mutate(self, templates, selection_strategy, seed):
     s = Stage(name='uut', selection_strategy=selection_strategy)
     for t in templates:
         s.add_template(t)
     with self.assertRaises(KittyException):
         s.mutate()
Beispiel #15
0
 def _check_exception_at_construction(self, selection_strategy, seed):
     with self.assertRaises(KittyException):
         Stage(name='uut', selection_strategy=selection_strategy, seed=seed)