@@ -1059,6 +1059,42 @@ describe('ParseGraphQLServer', () => {
1059
1059
1060
1060
expect ( payloadFields ) . toEqual ( [ 'class' , 'clientMutationId' ] ) ;
1061
1061
} ) ;
1062
+
1063
+ it ( 'should have clientMutationId in deleteClass mutation input' , async ( ) => {
1064
+ const inputFields = ( await apolloClient . query ( {
1065
+ query : gql `
1066
+ query {
1067
+ __type(name: "DeleteClassInput") {
1068
+ inputFields {
1069
+ name
1070
+ }
1071
+ }
1072
+ }
1073
+ ` ,
1074
+ } ) ) . data [ '__type' ] . inputFields
1075
+ . map ( field => field . name )
1076
+ . sort ( ) ;
1077
+
1078
+ expect ( inputFields ) . toEqual ( [ 'clientMutationId' , 'name' ] ) ;
1079
+ } ) ;
1080
+
1081
+ it ( 'should have clientMutationId in deleteClass mutation payload' , async ( ) => {
1082
+ const payloadFields = ( await apolloClient . query ( {
1083
+ query : gql `
1084
+ query {
1085
+ __type(name: "UpdateClassPayload") {
1086
+ fields {
1087
+ name
1088
+ }
1089
+ }
1090
+ }
1091
+ ` ,
1092
+ } ) ) . data [ '__type' ] . fields
1093
+ . map ( field => field . name )
1094
+ . sort ( ) ;
1095
+
1096
+ expect ( payloadFields ) . toEqual ( [ 'class' , 'clientMutationId' ] ) ;
1097
+ } ) ;
1062
1098
} ) ;
1063
1099
1064
1100
describe ( 'Parse Class Types' , ( ) => {
@@ -3481,6 +3517,7 @@ describe('ParseGraphQLServer', () => {
3481
3517
3482
3518
it ( 'should delete an existing class' , async ( ) => {
3483
3519
try {
3520
+ const clientMutationId = uuidv4 ( ) ;
3484
3521
const result = await apolloClient . mutate ( {
3485
3522
mutation : gql `
3486
3523
mutation {
@@ -3498,10 +3535,13 @@ describe('ParseGraphQLServer', () => {
3498
3535
}
3499
3536
}
3500
3537
}
3501
- deleteClass(name: "MyNewClass") {
3502
- name
3503
- schemaFields {
3538
+ deleteClass(input: { clientMutationId: " ${ clientMutationId } " name: "MyNewClass" } ) {
3539
+ clientMutationId
3540
+ class {
3504
3541
name
3542
+ schemaFields {
3543
+ name
3544
+ }
3505
3545
}
3506
3546
}
3507
3547
}
@@ -3515,7 +3555,7 @@ describe('ParseGraphQLServer', () => {
3515
3555
result . data . createClass . class . schemaFields = result . data . createClass . class . schemaFields . sort (
3516
3556
( a , b ) => ( a . name > b . name ? 1 : - 1 )
3517
3557
) ;
3518
- result . data . deleteClass . schemaFields = result . data . deleteClass . schemaFields . sort (
3558
+ result . data . deleteClass . class . schemaFields = result . data . deleteClass . class . schemaFields . sort (
3519
3559
( a , b ) => ( a . name > b . name ? 1 : - 1 )
3520
3560
) ;
3521
3561
expect ( result ) . toEqual ( {
@@ -3538,15 +3578,22 @@ describe('ParseGraphQLServer', () => {
3538
3578
__typename : 'CreateClassPayload' ,
3539
3579
} ,
3540
3580
deleteClass : {
3541
- name : 'MyNewClass' ,
3542
- schemaFields : [
3543
- { name : 'ACL' , __typename : 'SchemaACLField' } ,
3544
- { name : 'createdAt' , __typename : 'SchemaDateField' } ,
3545
- { name : 'objectId' , __typename : 'SchemaStringField' } ,
3546
- { name : 'updatedAt' , __typename : 'SchemaDateField' } ,
3547
- { name : 'willBeRemoved' , __typename : 'SchemaStringField' } ,
3548
- ] ,
3549
- __typename : 'Class' ,
3581
+ clientMutationId,
3582
+ class : {
3583
+ name : 'MyNewClass' ,
3584
+ schemaFields : [
3585
+ { name : 'ACL' , __typename : 'SchemaACLField' } ,
3586
+ { name : 'createdAt' , __typename : 'SchemaDateField' } ,
3587
+ { name : 'objectId' , __typename : 'SchemaStringField' } ,
3588
+ { name : 'updatedAt' , __typename : 'SchemaDateField' } ,
3589
+ {
3590
+ name : 'willBeRemoved' ,
3591
+ __typename : 'SchemaStringField' ,
3592
+ } ,
3593
+ ] ,
3594
+ __typename : 'Class' ,
3595
+ } ,
3596
+ __typename : 'DeleteClassPayload' ,
3550
3597
} ,
3551
3598
} ,
3552
3599
} ) ;
@@ -3604,8 +3651,8 @@ describe('ParseGraphQLServer', () => {
3604
3651
await apolloClient . mutate ( {
3605
3652
mutation : gql `
3606
3653
mutation {
3607
- deleteClass(name: "SomeClass") {
3608
- name
3654
+ deleteClass(input: { name: "SomeClass" } ) {
3655
+ clientMutationId
3609
3656
}
3610
3657
}
3611
3658
` ,
@@ -3626,8 +3673,8 @@ describe('ParseGraphQLServer', () => {
3626
3673
await apolloClient . mutate ( {
3627
3674
mutation : gql `
3628
3675
mutation {
3629
- deleteClass(name: "SomeInexistentClass") {
3630
- name
3676
+ deleteClass(input: { name: "SomeInexistentClass" } ) {
3677
+ clientMutationId
3631
3678
}
3632
3679
}
3633
3680
` ,
0 commit comments