@@ -2056,6 +2056,44 @@ describe('Parse Object', () => {
2056
2056
expect ( obj . get ( 'string' ) ) . toBeInstanceOf ( String ) ;
2057
2057
} ) ;
2058
2058
2059
+ it ( 'returns correct field values' , async ( ) => {
2060
+ const values = [
2061
+ { field : 'string' , value : 'string' } ,
2062
+ { field : 'number' , value : 1 } ,
2063
+ { field : 'boolean' , value : true } ,
2064
+ { field : 'array' , value : [ 0 , 1 , 2 ] } ,
2065
+ { field : 'array' , value : [ 1 , 2 , 3 ] } ,
2066
+ { field : 'array' , value : [ { '0' : 'a' } , 2 , 3 ] } ,
2067
+ { field : 'object' , value : { key : 'value' } } ,
2068
+ { field : 'object' , value : { key1 : 'value1' , key2 : 'value2' } } ,
2069
+ { field : 'object' , value : { key1 : 1 , key2 : 2 } } ,
2070
+ { field : 'object' , value : { '1x1' : 1 } } ,
2071
+ { field : 'object' , value : { '1x1' : 1 , '2' : 2 } } ,
2072
+ { field : 'object' , value : { '0' : 0 } } ,
2073
+ { field : 'object' , value : { '1' : 1 } } ,
2074
+ { field : 'object' , value : { '0' : { '0' : 'a' , '1' : 'b' } } } ,
2075
+ { field : 'date' , value : new Date ( ) } ,
2076
+ {
2077
+ field : 'file' ,
2078
+ value : Parse . File . fromJSON ( {
2079
+ __type : 'File' ,
2080
+ name : 'name' ,
2081
+ url : 'http://localhost:1337/parse/files/integration/name' ,
2082
+ } ) ,
2083
+ } ,
2084
+ { field : 'geoPoint' , value : new Parse . GeoPoint ( 40 , - 30 ) } ,
2085
+ { field : 'bytes' , value : { __type : 'Bytes' , base64 : 'ZnJveW8=' } } ,
2086
+ ] ;
2087
+ for ( const value of values ) {
2088
+ const object = new TestObject ( ) ;
2089
+ object . set ( value . field , value . value ) ;
2090
+ await object . save ( ) ;
2091
+ const query = new Parse . Query ( TestObject ) ;
2092
+ const objectAgain = await query . get ( object . id ) ;
2093
+ expect ( objectAgain . get ( value . field ) ) . toEqual ( value . value ) ;
2094
+ }
2095
+ } ) ;
2096
+
2059
2097
describe ( 'allowCustomObjectId' , ( ) => {
2060
2098
it ( 'can save without setting an objectId' , async ( ) => {
2061
2099
await reconfigureServer ( { allowCustomObjectId : true } ) ;
0 commit comments