Skip to content

Commit

Permalink
fix: gql request crashs when formatting scalar args (#173)
Browse files Browse the repository at this point in the history
  • Loading branch information
linchen1987 authored Sep 26, 2023
1 parent f55edce commit 3c748a2
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 2 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
## 0.34.3 (September 26, 2023)
- fix: gql request crashes when formatting scalar args

## 0.34.2 (September 26, 2023)
- fix: gql request crashes when formatting scalar args

Expand Down
2 changes: 1 addition & 1 deletion packages/sdk-util/src/util.js
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ const formatArgs = (values, specs = {}) => {

// escape slash(\) and double quotes (")
if ('String' === type) {
const container = isNull(value) ? null : (value || '').includes('\n') ? '"""' : '"';
const container = isNull(value) ? null : String(value).includes('\n') ? '"""' : '"';

return isNull(value) ? null : `${container}${value
.toString()
Expand Down
15 changes: 15 additions & 0 deletions packages/sdk-util/test/util.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,21 @@ describe('#formatArgs', () => {
expect(args).toEqual('address: "xxx", height: 123');
});

test('should process scalar types correctly (has break line)', () => {
const args = formatArgs({ address: 'ab\ncd', height: 123 }, specs);
expect(args).toEqual('address: """ab\ncd""", height: 123');
});

test('should process scalar types correctly (object in string)', () => {
const args = formatArgs({ address: { name: 'abc' }, height: 123 }, specs);
expect(args).toEqual('address: "[object Object]", height: 123');
});

test('should process scalar types correctly (null)', () => {
const args = formatArgs({ address: null, height: 123 }, specs);
expect(args).toEqual('address: null, height: 123');
});

test('should process null scalar values correctly', () => {
const args = formatArgs({ address: null, height: 123 }, specs);
expect(args).toEqual('address: null, height: 123');
Expand Down
2 changes: 1 addition & 1 deletion version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.34.2
0.34.3

0 comments on commit 3c748a2

Please sign in to comment.