fix missing modbus defaults in validation request (#26726)
This commit is contained in:
parent
510df0daf3
commit
e08741740d
2 changed files with 20 additions and 0 deletions
|
|
@ -352,6 +352,7 @@ export default defineComponent({
|
|||
},
|
||||
apiData(): ApiData {
|
||||
let data: ApiData = {
|
||||
...this.modbusDefaults,
|
||||
...this.values,
|
||||
};
|
||||
if (this.values.type === ConfigType.Template && this.templateName) {
|
||||
|
|
|
|||
|
|
@ -64,4 +64,23 @@ test.describe("modbus service expansion", async () => {
|
|||
await meterModal.getByLabel("IP address or hostname").fill("192.168.1.1");
|
||||
await expect(meterModal.getByLabel("Test value")).toHaveValue("100,id:2,tcp");
|
||||
});
|
||||
|
||||
test("template defaults are included in validation request", async ({ page }) => {
|
||||
const meterModal = await openMeterModal(page);
|
||||
|
||||
// Fill required fields
|
||||
await meterModal.getByLabel("Register address").fill("100");
|
||||
await meterModal.getByLabel("IP address or hostname").fill("192.168.1.1");
|
||||
await meterModal.getByLabel("Test value").fill("test");
|
||||
|
||||
// Intercept validation POST request
|
||||
const requestPromise = page.waitForRequest(
|
||||
(req) => req.url().includes("/api/config/test/meter") && req.method() === "POST"
|
||||
);
|
||||
await meterModal.getByRole("button", { name: "Save" }).click();
|
||||
const body = (await requestPromise).postDataJSON();
|
||||
|
||||
// Template has id: 2 - verify it's included even though user didn't set it
|
||||
expect(body.id).toBe(2);
|
||||
});
|
||||
});
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue