Skip to content

Commit 7f56d13

Browse files
committed
set initial value and test
1 parent ac81838 commit 7f56d13

File tree

4 files changed

+59
-5
lines changed

4 files changed

+59
-5
lines changed

frontend/src/__tests__/cypress/cypress/pages/modelServing.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -456,6 +456,26 @@ class ServingRuntimeModal extends Modal {
456456
return this.find().findByTestId('model-server-size-selection');
457457
}
458458

459+
findModelServerSizeSelectOption(name: string) {
460+
return cy.findByTestId(`model-server-size-select-option-${name}`);
461+
}
462+
463+
findCPURequestInput() {
464+
return this.find().findByTestId('cpu-request-input');
465+
}
466+
467+
findCPULimitInput() {
468+
return this.find().findByTestId('cpu-limit-input');
469+
}
470+
471+
findMemoryRequestInput() {
472+
return this.find().findByTestId('memory-request-input');
473+
}
474+
475+
findMemoryLimitInput() {
476+
return this.find().findByTestId('memory-limit-input');
477+
}
478+
459479
findDeployedModelRouteCheckbox() {
460480
return this.find().findByTestId('alt-form-checkbox-route');
461481
}

frontend/src/__tests__/cypress/cypress/tests/mocked/modelServing/runtime/servingRuntimeList.cy.ts

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -896,6 +896,25 @@ describe('Serving Runtime List', () => {
896896
kserveModal.findServingRuntimeEnvVarsValue('0').type('test-value');
897897
kserveModal.findSubmitButton().should('be.enabled');
898898

899+
// test model server size select
900+
kserveModal.findModelServerSizeSelect().click();
901+
kserveModal.findModelServerSizeSelectOption('Medium').find('button').click();
902+
kserveModal.findSubmitButton().should('be.enabled');
903+
kserveModal.findModelServerSizeSelect().click();
904+
kserveModal.findModelServerSizeSelectOption('Custom').find('button').click();
905+
kserveModal.findSubmitButton().should('be.enabled');
906+
907+
// test custom cpu and memory
908+
kserveModal.findCPURequestInput().clear().type('3');
909+
kserveModal.findCPULimitInput().clear().type('2');
910+
kserveModal.findMemoryRequestInput().clear().type('4Gi');
911+
kserveModal.findMemoryLimitInput().clear().type('3Gi');
912+
kserveModal.findSubmitButton().should('be.disabled');
913+
914+
kserveModal.findModelServerSizeSelect().click();
915+
kserveModal.findModelServerSizeSelectOption('Small').find('button').click();
916+
kserveModal.findSubmitButton().should('be.enabled');
917+
899918
// test submitting form, the modal should close to indicate success.
900919
kserveModal.findSubmitButton().click();
901920
kserveModal.shouldBeOpen(false);

frontend/src/pages/modelServing/screens/projects/ServingRuntimeModal/ServingRuntimeSizeExpandedField.tsx

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,31 +32,45 @@ const ServingRuntimeSizeExpandedField = ({
3232
},
3333
});
3434
};
35+
const setInitialValue = (
36+
type: ContainerResourceAttributes,
37+
variant: ResourceKeys,
38+
): string | number => {
39+
if (data.resources[variant]?.[type] === undefined) {
40+
handleChange(type, variant, '1');
41+
return '1';
42+
}
43+
return data.resources[variant][type];
44+
};
3545

3646
return (
3747
<Grid hasGutter md={6}>
3848
<FormGroup label="CPUs requested">
3949
<CPUField
4050
onChange={(value) => handleChange(ContainerResourceAttributes.CPU, 'requests', value)}
41-
value={data.resources.requests?.cpu}
51+
value={setInitialValue(ContainerResourceAttributes.CPU, 'requests')}
52+
dataTestId="cpu-request"
4253
/>
4354
</FormGroup>
4455
<FormGroup label="Memory requested">
4556
<MemoryField
4657
onChange={(value) => handleChange(ContainerResourceAttributes.MEMORY, 'requests', value)}
47-
value={data.resources.requests?.memory}
58+
value={setInitialValue(ContainerResourceAttributes.MEMORY, 'requests')}
59+
dataTestId="memory-request"
4860
/>
4961
</FormGroup>
5062
<FormGroup label="CPU limit">
5163
<CPUField
5264
onChange={(value) => handleChange(ContainerResourceAttributes.CPU, 'limits', value)}
53-
value={data.resources.limits?.cpu}
65+
value={setInitialValue(ContainerResourceAttributes.CPU, 'limits')}
66+
dataTestId="cpu-limit"
5467
/>
5568
</FormGroup>
5669
<FormGroup label="Memory limit">
5770
<MemoryField
5871
onChange={(value) => handleChange(ContainerResourceAttributes.MEMORY, 'limits', value)}
59-
value={data.resources.limits?.memory}
72+
value={setInitialValue(ContainerResourceAttributes.MEMORY, 'limits')}
73+
dataTestId="memory-limit"
6074
/>
6175
</FormGroup>
6276
</Grid>

frontend/src/pages/modelServing/screens/projects/ServingRuntimeModal/ServingRuntimeSizeSection.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,14 +53,15 @@ const ServingRuntimeSizeSection = ({
5353
const sizeOptions = () =>
5454
sizeCustom.map((size) => {
5555
const { name } = size;
56+
const dataTestId = `model-server-size-select-option-${name}`;
5657
const desc =
5758
name !== 'Custom'
5859
? `Limits: ${size.resources.limits?.cpu || '??'} CPU, ` +
5960
`${formatMemory(size.resources.limits?.memory) || '??'} Memory ` +
6061
`Requests: ${size.resources.requests?.cpu || '??'} CPU, ` +
6162
`${formatMemory(size.resources.requests?.memory) || '??'} Memory`
6263
: '';
63-
return { key: name, label: name, description: desc };
64+
return { key: name, label: name, description: desc, dataTestId };
6465
});
6566

6667
const isHardwareProfileSupported = React.useCallback(

0 commit comments

Comments
 (0)