def METHOD_NAME(self):
    req = Requirement()
    self.assertIsNone(req.types)
    req = Requirement(specification=TestSpecification(type='andrew'))
    self.assertEqual(len(req.types), 1)
    self.assertEqual(req.types, {'andrew'})
    req = Requirement(details=[Detail(specification=TestSpecification(type='andrew')),
                               Detail(specification=TestSpecification(type='1980'))])
    self.assertEqual(len(req.types), 2)
    self.assertEqual(req.types, {'andrew', '1980'})