scheme: add --json flag to list-presets, --accent flag, drop :accent from preset spec
- list-presets --json outputs structured JSON with variants, modes, accents, and default_accent for accent-aware schemes - --accent flag replaces :accent shorthand in preset string - Validate --accent against variant's available accents - resolve_preset returns tuple[str, str] (scheme + variant only) - Update tests for new signature
This commit is contained in:
@@ -154,13 +154,14 @@ class TestListSchemes:
|
||||
|
||||
class TestResolvePreset:
|
||||
def test_two_parts(self):
|
||||
assert sp.resolve_preset("gruvbox:medium") == ("gruvbox", "medium", None)
|
||||
assert sp.resolve_preset("gruvbox:medium") == ("gruvbox", "medium")
|
||||
|
||||
def test_three_parts(self):
|
||||
assert sp.resolve_preset("catppuccin:mocha:mauve") == ("catppuccin", "mocha", "mauve")
|
||||
with pytest.raises(ValueError, match="Invalid preset spec"):
|
||||
sp.resolve_preset("catppuccin:mocha:mauve")
|
||||
|
||||
def test_one_part(self):
|
||||
assert sp.resolve_preset("default") == ("default", "default", None)
|
||||
assert sp.resolve_preset("default") == ("default", "default")
|
||||
|
||||
def test_edge_spaces(self):
|
||||
assert sp.resolve_preset(" catppuccin : mocha : mauve ") == (" catppuccin ", " mocha ", " mauve ")
|
||||
assert sp.resolve_preset(" catppuccin : mocha ") == (" catppuccin ", " mocha ")
|
||||
|
||||
Reference in New Issue
Block a user