def test_contrib(self): config = LintConfig() contrib_rules = ["contrib-title-conventional-commits", "CC1"] config.set_general_option("contrib", ",".join(contrib_rules)) self.assertEqual(config.contrib, contrib_rules) # Check contrib-title-conventional-commits contrib rule actual_rule = config.get_rule("contrib-title-conventional-commits") self.assertTrue(actual_rule.is_contrib) self.assertEqual(ustr(type(actual_rule)), "<class 'conventional_commit.ConventionalCommit'>") self.assertEqual(actual_rule.id, 'CT1') self.assertEqual(actual_rule.name, u'contrib-title-conventional-commits') self.assertEqual(actual_rule.target, rules.CommitMessageTitle) expected_rule_option = options.ListOption( "types", [ "fix", "feat", "chore", "docs", "style", "refactor", "perf", "test", "revert" ], "Comma separated list of allowed commit types.", ) self.assertListEqual(actual_rule.options_spec, [expected_rule_option]) self.assertDictEqual(actual_rule.options, {'types': expected_rule_option}) # Check contrib-body-requires-signed-off-by contrib rule actual_rule = config.get_rule("contrib-body-requires-signed-off-by") self.assertTrue(actual_rule.is_contrib) self.assertEqual(ustr(type(actual_rule)), "<class 'signedoff_by.SignedOffBy'>") self.assertEqual(actual_rule.id, 'CC1') self.assertEqual(actual_rule.name, u'contrib-body-requires-signed-off-by') # reset value (this is a different code path) config.set_general_option("contrib", "contrib-body-requires-signed-off-by") self.assertEqual( actual_rule, config.get_rule("contrib-body-requires-signed-off-by")) self.assertIsNone( config.get_rule("contrib-title-conventional-commits")) # empty value config.set_general_option("contrib", "") self.assertListEqual(config.contrib, [])
def test_get_rule(self): config = LintConfig() # get by id expected = rules.TitleMaxLength() rule = config.get_rule('T1') self.assertEqual(rule, expected) # get by name expected = rules.TitleTrailingWhitespace() # pylint: disable=redefined-variable-type rule = config.get_rule('title-trailing-whitespace') self.assertEqual(rule, expected) # get non-existing rule = config.get_rule('foo') self.assertIsNone(rule)
def test_get_rule(self): config = LintConfig() # get by id expected = rules.TitleMaxLength() rule = config.get_rule('T1') self.assertEqual(rule, expected) # get by name expected2 = rules.TitleTrailingWhitespace() rule = config.get_rule('title-trailing-whitespace') self.assertEqual(rule, expected2) # get non-existing rule = config.get_rule(u'föo') self.assertIsNone(rule)
def test_extra_path(self): config = LintConfig() config.set_general_option("extra-path", self.get_user_rules_path()) self.assertEqual(config.extra_path, self.get_user_rules_path()) actual_rule = config.get_rule('UC1') self.assertTrue(actual_rule.user_defined) self.assertEqual(ustr(type(actual_rule)), "<class 'my_commit_rules.MyUserCommitRule'>") self.assertEqual(actual_rule.id, 'UC1') self.assertEqual(actual_rule.name, u'my-üser-commit-rule') self.assertEqual(actual_rule.target, None) expected_rule_option = IntOption('violation-count', 1, u"Number of violåtions to return") self.assertListEqual(actual_rule.options_spec, [expected_rule_option]) self.assertDictEqual(actual_rule.options, {'violation-count': expected_rule_option}) # reset value (this is a different code path) config.set_general_option("extra-path", self.SAMPLES_DIR) self.assertEqual(config.extra_path, self.SAMPLES_DIR) self.assertIsNone(config.get_rule("UC1"))
def test_extra_path(self): config = LintConfig() config.set_general_option("extra-path", self.get_rule_rules_path()) self.assertEqual(config.extra_path, self.get_rule_rules_path()) actual_rule = config.get_rule('TUC1') self.assertTrue(actual_rule.user_defined) self.assertEqual(str(type(actual_rule)), "<class 'my_commit_rules.MyUserCommitRule'>") self.assertEqual(actual_rule.id, 'TUC1') self.assertEqual(actual_rule.name, 'my-user-commit-rule') self.assertEqual(actual_rule.target, None) expected_rule_option = IntOption('violation-count', 1, "Number of violations to return") self.assertListEqual(actual_rule.options_spec, [expected_rule_option]) self.assertDictEqual(actual_rule.options, {'violation-count': expected_rule_option}) # reset value (this is a different code path) config.set_general_option("extra-path", self.SAMPLES_DIR) self.assertEqual(config.extra_path, self.SAMPLES_DIR) self.assertIsNone(config.get_rule("TUC1"))