@@ -2,9 +2,10 @@ import { test, expect } from '@playwright/test';
22import { expectCompilationSucceeded , expectExecutionProgressBarSucceeded } from './utils/expect' ;
33import { readFromCodeEditor , writeToCodeEditor } from './utils/editor' ;
44import { newAemContext } from './utils/context' ;
5+ import { attachScreenshot } from './utils/page' ;
56
67test . describe ( 'Tool Access' , ( ) => {
7- test ( 'Admin user has full access' , async ( { page } ) => {
8+ test ( 'Admin user has full access' , async ( { page } , testInfo ) => {
89 await page . goto ( '/acm' ) ;
910
1011 await expect ( page . getByRole ( 'button' , { name : 'Console' } ) ) . toBeVisible ( ) ;
@@ -18,9 +19,11 @@ test.describe('Tool Access', () => {
1819 await page . goto ( '/acm#/console' ) ;
1920 await expectCompilationSucceeded ( page ) ;
2021 await expect ( page . getByRole ( 'button' , { name : 'Execute' } ) ) . toBeEnabled ( ) ;
22+
23+ await attachScreenshot ( page , testInfo , 'Admin Full Access' ) ;
2124 } ) ;
2225
23- test ( 'Setup test user and verify limited access' , async ( { page, browser } ) => {
26+ test ( 'Setup test user and verify limited access' , async ( { page, browser } , testInfo ) => {
2427 await page . goto ( '/acm#/console' ) ;
2528
2629 await expectCompilationSucceeded ( page ) ;
@@ -59,8 +62,7 @@ test.describe('Tool Access', () => {
5962
6063 await expect ( page . getByRole ( 'button' , { name : 'Execute' } ) ) . toBeEnabled ( ) ;
6164 await page . getByRole ( 'button' , { name : 'Execute' } ) . click ( ) ;
62-
63- await page . getByRole ( 'tab' , { name : 'Output' } ) . click ( ) ;
65+ await expect ( page . getByRole ( 'tab' , { name : 'Output' } ) ) . toHaveAttribute ( 'aria-selected' , 'true' ) ;
6466 await expectExecutionProgressBarSucceeded ( page ) ;
6567
6668 const output = await readFromCodeEditor ( page , 'Console Output' ) ;
@@ -77,6 +79,8 @@ test.describe('Tool Access', () => {
7779 await expect ( testUserPage . getByRole ( 'button' , { name : 'Snippets' } ) ) . not . toBeVisible ( ) ;
7880 await expect ( testUserPage . getByRole ( 'button' , { name : 'History' } ) ) . not . toBeVisible ( ) ;
7981 await expect ( testUserPage . getByRole ( 'button' , { name : 'Maintenance' } ) ) . not . toBeVisible ( ) ;
82+
83+ await attachScreenshot ( testUserPage , testInfo , 'Test User Access - Dashboard' ) ;
8084
8185 await testUserPage . getByRole ( 'button' , { name : 'Scripts' } ) . click ( ) ;
8286 await expect ( testUserPage ) . toHaveURL ( / \/ a c m # \/ s c r i p t s / ) ;
@@ -90,6 +94,9 @@ test.describe('Tool Access', () => {
9094 const scriptRow = rows . nth ( 1 ) ;
9195 await expect ( scriptRow . locator ( '[role="rowheader"]' ) ) . toContainText ( 'example/ACME-200_hello-world' ) ;
9296
97+ await attachScreenshot ( testUserPage , testInfo , 'Test User Access - Script List' ) ;
98+
99+ // Check if routing blocks access to other tools
93100 await testUserPage . goto ( '/acm#/console' ) ;
94101 await expect ( testUserPage . getByRole ( 'button' , { name : 'Console' } ) ) . not . toBeVisible ( ) ;
95102
0 commit comments