Skip to content

Commit 2b17b51

Browse files
committed
fix: skip checksum if input[requestAlgorithmMember] is not set
1 parent 878b728 commit 2b17b51

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

packages/middleware-flexible-checksums/src/getChecksumAlgorithmForRequest.spec.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,22 @@ describe(getChecksumAlgorithmForRequest.name, () => {
3939
});
4040
});
4141

42+
describe("returns undefined if input[requestAlgorithmMember] is not set", () => {
43+
describe.each([true, false])("when requestChecksumRequired='%s'", (requestChecksumRequired) => {
44+
it.each([RequestChecksumCalculation.WHEN_SUPPORTED, RequestChecksumCalculation.WHEN_REQUIRED])(
45+
"when requestChecksumCalculation='%s'",
46+
(requestChecksumCalculation) => {
47+
const mockOptions = {
48+
requestChecksumRequired,
49+
requestChecksumCalculation,
50+
requestAlgorithmMember: mockRequestAlgorithmMember,
51+
};
52+
expect(getChecksumAlgorithmForRequest({}, mockOptions)).toBeUndefined();
53+
}
54+
);
55+
});
56+
});
57+
4258
it("throws error if input[requestAlgorithmMember] if not supported by client", () => {
4359
const unsupportedAlgo = "unsupportedAlgo";
4460
const mockInput = { [mockRequestAlgorithmMember]: unsupportedAlgo };

packages/middleware-flexible-checksums/src/getChecksumAlgorithmForRequest.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ export const getChecksumAlgorithmForRequest = (
3636
: undefined;
3737
}
3838

39+
if (!input[requestAlgorithmMember]) {
40+
return undefined;
41+
}
42+
3943
const checksumAlgorithm = input[requestAlgorithmMember];
4044
// Validate that at least one algorithm from customer preference is supported by the SDK.
4145
if (!CLIENT_SUPPORTED_ALGORITHMS.includes(checksumAlgorithm)) {

0 commit comments

Comments
 (0)