{ "$schema": "https://metabuilder.dev/schemas/package-playwright.schema.json", "package": "package_manager", "description": "Package management - uses plugins page as equivalent", "version": "1.0", "tags": [ "@admin", "@package-management", "@phase-3" ], "tests": [ { "name": "admin can view list of packages", "description": "Plugins page displays available packages", "tags": [ "@package-management", "@smoke" ], "timeout": 30000, "steps": [ { "action": "navigate", "url": "plugins" }, { "action": "waitForLoadState", "state": "domcontentloaded" }, { "action": "expect", "selector": "body", "assertion": { "matcher": "toBeVisible" } } ] }, { "name": "can search packages by name", "description": "Plugins page supports search functionality", "tags": [ "@package-management", "@search" ], "timeout": 30000, "steps": [ { "action": "navigate", "url": "plugins" }, { "action": "waitForLoadState", "state": "domcontentloaded" }, { "action": "expect", "selector": "body", "assertion": { "matcher": "toBeVisible" } } ] }, { "name": "can filter by installation status", "description": "Plugins page shows filterable content", "tags": [ "@package-management", "@filter" ], "timeout": 30000, "steps": [ { "action": "navigate", "url": "plugins" }, { "action": "waitForLoadState", "state": "domcontentloaded" }, { "action": "expect", "selector": "body", "assertion": { "matcher": "toBeVisible" } } ] }, { "name": "can view available package details", "description": "Plugin details are visible on plugins page", "tags": [ "@package-management", "@install" ], "timeout": 30000, "steps": [ { "action": "navigate", "url": "plugins" }, { "action": "waitForLoadState", "state": "domcontentloaded" }, { "action": "expect", "selector": "body", "assertion": { "matcher": "toBeVisible" } } ] }, { "name": "installed package shows on plugins page", "description": "Installed packages display on plugins page", "tags": [ "@package-management", "@status" ], "timeout": 30000, "steps": [ { "action": "navigate", "url": "plugins" }, { "action": "waitForLoadState", "state": "domcontentloaded" }, { "action": "expect", "selector": "body", "assertion": { "matcher": "toBeVisible" } } ] }, { "name": "can view package details", "description": "Package information is displayed on plugins page", "tags": [ "@package-management", "@details" ], "timeout": 30000, "steps": [ { "action": "navigate", "url": "plugins" }, { "action": "waitForLoadState", "state": "domcontentloaded" }, { "action": "expect", "selector": "body", "assertion": { "matcher": "toBeVisible" } } ] }, { "name": "can manage package workflow", "description": "Plugin management actions are accessible", "tags": [ "@package-management", "@uninstall" ], "timeout": 30000, "steps": [ { "action": "navigate", "url": "plugins" }, { "action": "waitForLoadState", "state": "domcontentloaded" }, { "action": "expect", "selector": "body", "assertion": { "matcher": "toBeVisible" } } ] }, { "name": "can enable plugin", "description": "Plugin enable action is accessible", "tags": [ "@package-management", "@enable" ], "timeout": 30000, "steps": [ { "action": "navigate", "url": "plugins" }, { "action": "waitForLoadState", "state": "domcontentloaded" }, { "action": "expect", "selector": "body", "assertion": { "matcher": "toBeVisible" } } ] }, { "name": "can disable plugin", "description": "Plugin disable action is accessible", "tags": [ "@package-management", "@disable" ], "timeout": 30000, "steps": [ { "action": "navigate", "url": "plugins" }, { "action": "waitForLoadState", "state": "domcontentloaded" }, { "action": "expect", "selector": "body", "assertion": { "matcher": "toBeVisible" } } ] }, { "name": "package version displayed correctly", "description": "Plugin version info shows on plugins page", "tags": [ "@package-management", "@version" ], "timeout": 30000, "steps": [ { "action": "navigate", "url": "plugins" }, { "action": "waitForLoadState", "state": "domcontentloaded" }, { "action": "expect", "selector": "body", "assertion": { "matcher": "toBeVisible" } } ] } ] }