mirror of
https://github.com/inventree/InvenTree.git
synced 2025-06-14 02:55:41 +00:00
[PUI] Dynamic PartParameter field (#7298)
* Add 'adjustValue' callback for form field * Cast checkbox values to boolean * Call "onChange" callbacks * Implement dynamic "data" field for PartParameter dialog - Type of field changes based on selected template * Add playwright unit tests * Add labels to table row actions * linting fixes * Adjust playwright tests
This commit is contained in:
@ -157,5 +157,42 @@ test('PUI - Pages - Part - Attachments', async ({ page }) => {
|
||||
|
||||
await page.goto(`${baseUrl}/part/69/attachments`);
|
||||
|
||||
await page.waitForTimeout(5000);
|
||||
// Submit a new external link
|
||||
await page.getByLabel('action-button-add-external-').click();
|
||||
await page.getByLabel('text-field-link').fill('https://www.google.com');
|
||||
await page.getByLabel('text-field-comment').fill('a sample comment');
|
||||
await page.getByRole('button', { name: 'Submit' }).click();
|
||||
await page.getByRole('cell', { name: 'a sample comment' }).first().waitFor();
|
||||
|
||||
// Launch dialog to upload a file
|
||||
await page.getByLabel('action-button-add-attachment').click();
|
||||
await page.getByLabel('text-field-comment').fill('some comment');
|
||||
await page.getByRole('button', { name: 'Cancel' }).click();
|
||||
});
|
||||
|
||||
test('PUI - Pages - Part - Parameters', async ({ page }) => {
|
||||
await doQuickLogin(page);
|
||||
|
||||
await page.goto(`${baseUrl}/part/69/parameters`);
|
||||
|
||||
// Create a new template
|
||||
await page.getByLabel('action-button-add-parameter').click();
|
||||
|
||||
// Select the "Color" parameter template (should create a "choice" field)
|
||||
await page.getByLabel('related-field-template').fill('Color');
|
||||
await page.getByText('Part color').click();
|
||||
await page.getByLabel('choice-field-data').click();
|
||||
await page.getByRole('option', { name: 'Green' }).click();
|
||||
|
||||
// Select the "polarized" parameter template (should create a "checkbox" field)
|
||||
await page.getByLabel('related-field-template').fill('Polarized');
|
||||
await page.getByText('Is this part polarized?').click();
|
||||
await page
|
||||
.locator('label')
|
||||
.filter({ hasText: 'DataParameter Value' })
|
||||
.locator('div')
|
||||
.first()
|
||||
.click();
|
||||
|
||||
await page.getByRole('button', { name: 'Cancel' }).click();
|
||||
});
|
||||
|
Reference in New Issue
Block a user