def test_merge_choice(self):
    spec = choice([uniform(0, 1), uniform(2, 3)])
    parsed = ParsedSpec(spec)
    self.assertEqual(parsed.size(), 3)
    self.assertEqual(0.0, parsed.instantiate([0.0, 0.0, 0.0]))
    self.assertEqual(1.0, parsed.instantiate([1.0, 0.0, 0.0]))
    self.assertEqual(2.0, parsed.instantiate([0.0, 0.0, 0.9]))
    self.assertEqual(3.0, parsed.instantiate([0.0, 1.0, 0.9]))
def test_merge_choice(self):
    spec = choice([uniform(0, 1), uniform(2, 3)])
    parsed = ParsedSpec(spec)
    self.assertEqual(parsed.size(), 3)
    self.assertEqual(0.0, parsed.instantiate([0.0, 0.0, 0.0]))
    self.assertEqual(1.0, parsed.instantiate([1.0, 0.0, 0.0]))
    self.assertEqual(2.0, parsed.instantiate([0.0, 0.0, 0.9]))
    self.assertEqual(3.0, parsed.instantiate([0.0, 1.0, 0.9]))