fix(mockapi): dotnet compatibility failure (#769)

* fix(mockapi): dotnet compatibility failure

dotnet uses different but compatible datetime format, so the comparison should use `coercedBodyEquals`

---------

Co-authored-by: Mingzhe Huang (from Dev Box) <mingzhehuang@microsoft.com>
This commit is contained in:
Mingzhe Huang 2024-11-11 15:39:07 +08:00 коммит произвёл GitHub
Родитель 778bacc545
Коммит bb6a2dd9d1
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
6 изменённых файлов: 40 добавлений и 1 удалений

Просмотреть файл

@ -0,0 +1,5 @@
---
"@azure-tools/cadl-ranch-specs": patch
---
Fix dotnet compatibility issues in MockApi

Просмотреть файл

@ -23,6 +23,12 @@ function createServerTests(uri: string, data: any) {
response: {
status: 204,
},
handler: (req) => {
req.expect.coercedBodyEquals(data);
return {
status: 204,
};
},
kind: "MockApiDefinition",
}),
};

Просмотреть файл

@ -1,4 +1,4 @@
import { passOnSuccess, ScenarioMockApi, json } from "@azure-tools/cadl-ranch-api";
import { passOnSuccess, ScenarioMockApi, json, MockRequest } from "@azure-tools/cadl-ranch-api";
export const Scenarios: Record<string, ScenarioMockApi> = {};
@ -119,6 +119,13 @@ function createServerTests(url: string, value: any) {
response: {
status: 204,
},
handler: (req: MockRequest) => {
const expectedBody = JSON.parse(JSON.stringify(value));
req.expect.coercedBodyEquals(expectedBody);
return {
status: 204,
};
},
kind: "MockApiDefinition",
}),
};

Просмотреть файл

@ -29,6 +29,15 @@ function createServerTests(url: string, value: unknown, patchNullableProperty?:
response: {
status: 204,
},
handler: (req) => {
req.expect.coercedBodyEquals({
requiredProperty: "foo",
nullableProperty: patchNullableProperty || null,
});
return {
status: 204,
};
},
kind: "MockApiDefinition",
}),
};

Просмотреть файл

@ -23,6 +23,12 @@ function createServerTests(url: string, value: unknown) {
response: {
status: 204,
},
handler: (req) => {
req.expect.coercedBodyEquals(value);
return {
status: 204,
};
},
kind: "MockApiDefinition",
}),
};

Просмотреть файл

@ -23,6 +23,12 @@ function createServerTests(url: string, data: unknown, convertedToFn?: (_: any)
response: {
status: 204,
},
handler: (req) => {
req.expect.coercedBodyEquals(data);
return {
status: 204,
};
},
kind: "MockApiDefinition",
}),
};