def test_all_scenarios_have_docstrings(self):
        ignored_params = ["self", "scenario_obj"]
        for scenario_inst in scenario.Scenario.get_all():
            self.assertIsNotNone(scenario_inst.__doc__,
                                 "%s doensn't have a docstring." %
                                 scenario_inst.get_name())
            doc = info.parse_docstring(scenario_inst.__doc__)
            short_description = doc["short_description"]
            self.assertIsNotNone(short_description,
                                 "Docstring for %s should have "
                                 "at least a one-line description." %
                                 scenario_inst.get_name())
            self.assertFalse(short_description.startswith("Test"),
                             "One-line description for %s "
                             "should be declarative and not start "
                             "with 'Test(s) ...'" % scenario_inst.get_name())
            params_count = scenario_inst.__code__.co_argcount
            params = scenario_inst.__code__.co_varnames[:params_count]
            documented_params = [p["name"] for p in doc["params"]]
            for param in params:
                if ignored_params not in param:
                    self.assertIn(param, documented_params,
                                  "Docstring for %(scenario)s should "
                                  "describe the '%(param)s' parameter "
                                  "in the :param <name>: clause." %
                                  {"scenario": scenario_inst.get_name(),
                                   "param": param})
dataset/ETHPy150Open openstack/rally/tests/unit/test_docstrings.py/DocstringsTestCase.test_all_scenarios_have_docstrings/swapped operands of `not in`