Allow skill slugs without a platform suffix.
All checks were successful
技能自动化发布 / release (push) Successful in 9s
All checks were successful
技能自动化发布 / release (push) Successful in 9s
This commit is contained in:
@@ -44,6 +44,8 @@ class TestSlugNaming(unittest.TestCase):
|
||||
for slug in (
|
||||
"download-settlement-report-amazon",
|
||||
"add-product-shopee",
|
||||
"generate-monthly-statements",
|
||||
"reconcile-finance",
|
||||
"generate-article-all",
|
||||
"your-skill-slug",
|
||||
"account-manager",
|
||||
@@ -56,8 +58,7 @@ class TestSlugNaming(unittest.TestCase):
|
||||
cases = (
|
||||
"amazon-download-settlement-report",
|
||||
"enter-cross-border-sales-receipt-voucher-kingdee",
|
||||
"reconcile-finance",
|
||||
"download-settlement-report-unknownplat",
|
||||
"generate",
|
||||
"foobar-settlement-report-amazon",
|
||||
)
|
||||
for slug in cases:
|
||||
@@ -78,6 +79,19 @@ class TestSlugNaming(unittest.TestCase):
|
||||
self.assertTrue(errors)
|
||||
self.assertTrue(any("48" in err for err in errors))
|
||||
|
||||
def test_plain_slug_without_platform(self) -> None:
|
||||
slug = "generate-monthly-statements"
|
||||
self.assertEqual(classify_slug_form(parse_slug_segments(slug), slug=slug), "plain")
|
||||
errors, warnings = validate_slug_semantics(slug)
|
||||
self.assertEqual(errors, [], msg=f"errors={errors!r} warnings={warnings!r}")
|
||||
self.assertEqual(warnings, [])
|
||||
|
||||
def test_default_suffix_warns_but_does_not_fail(self) -> None:
|
||||
slug = "generate-article-default"
|
||||
errors, warnings = validate_slug_semantics(slug)
|
||||
self.assertEqual(errors, [], msg=f"errors={errors!r}")
|
||||
self.assertTrue(any("default" in item for item in warnings), msg=f"warnings={warnings!r}")
|
||||
|
||||
def test_legacy_exempt_set(self) -> None:
|
||||
self.assertIn("your-skill-slug", LEGACY_EXEMPT_SLUGS)
|
||||
self.assertIn("account-manager", LEGACY_EXEMPT_SLUGS)
|
||||
|
||||
Reference in New Issue
Block a user