@@ -88,9 +88,14 @@ public class TestRemoteTKController{
8888 ' Wrong account number in ' + method + ' result' );
8989 }
9090
91- static private Id testCreate (String accName , String accNumber ) {
91+ static private Id testCreate (String accName , String accNumber , String fields ) {
9292 // Assume we can create an account
93- String jsonResult = RemoteTKController .create (' Account' , ' {"Name": "' + accName + ' ", "AccountNumber" : "' + accNumber + ' "}' );
93+
94+ // Try with data in correct types
95+ String jsonResult = RemoteTKController .create (' Account' ,
96+ ' {"Name": "' + accName + ' ", ' +
97+ ' "AccountNumber" : "' + accNumber + ' ",' +
98+ fields + ' }' );
9499
95100 System .assertNotEquals (null , jsonResult ,
96101 ' RemoteTKController.create returned null' );
@@ -203,22 +208,22 @@ public class TestRemoteTKController{
203208 assertError (jsonResult , ' INVALID_SEARCH' , ' RemoteTKController.search' );
204209 }
205210
206- static private void testUpdate (String accName , String accNumber , Id id ) {
207- String jsonResult = RemoteTKController .updat (' Account' , id , ' {"Name":"' + accName + ' 1 ", "AccountNumber":"' + accNumber + ' 1 "}' );
211+ static private void testUpdate (String accName , String accNumber , Id id , String fields ) {
212+ String jsonResult = RemoteTKController .updat (' Account' , id , ' {"Name":"' + accName + ' ", "AccountNumber":"' + accNumber + ' "}' );
208213 System .assertEquals (null , jsonResult ,
209214 ' Non-null result from RemoteTKController.updat' );
210215 Account account = [SELECT Id , Name , AccountNumber FROM Account WHERE Id = : id LIMIT 1 ];
211216 System .assertNotEquals (null , account ,
212217 ' Couldn\' t find account record after RemoteTKController.updat' );
213- System .assertEquals (accName + ' 1 ' , account .Name ,
218+ System .assertEquals (accName , account .Name ,
214219 ' Account name doesn\' t match after RemoteTKController.updat' );
215- System .assertEquals (accNumber + ' 1 ' , account .AccountNumber ,
220+ System .assertEquals (accNumber , account .AccountNumber ,
216221 ' Account number doesn\' t match after RemoteTKController.updat' );
217222
218- jsonResult = RemoteTKController .updat (' QXZXQZXZQXZQ' , id , ' {"Name":"' + accName + ' 1 "}' );
223+ jsonResult = RemoteTKController .updat (' QXZXQZXZQXZQ' , id , ' {"Name":"' + accName + ' "}' );
219224 assertError (jsonResult , ' NOT_FOUND' , ' RemoteTKController.updat' );
220225
221- jsonResult = RemoteTKController .updat (' Account' , id , ' {"XQZXQZXQZXQZ" : "' + accName + ' 1 "}' );
226+ jsonResult = RemoteTKController .updat (' Account' , id , ' {"XQZXQZXQZXQZ" : "' + accName + ' "}' );
222227 assertError (jsonResult , ' INVALID_FIELD' , ' RemoteTKController.updat' );
223228
224229 jsonResult = RemoteTKController .updat (' Account' , id , ' {"Name" "' + accName + ' "}' );
@@ -228,22 +233,27 @@ public class TestRemoteTKController{
228233 assertError (jsonResult , ' STRING_TOO_LONG' , ' RemoteTKController.updat' );
229234 }
230235
231- static private void testUpsert (String accName , String accNumber , Id id ) {
232- String jsonResult = RemoteTKController .upser (' Account' , ' Id' , (String )id , ' {"Name":"' + accName + ' 2", "AccountNumber":"' + accNumber + ' 2"}' );
236+ static private void testUpsert (String accName , String accNumber , Id id , String fields ) {
237+ String jsonResult = RemoteTKController .upser (' Account' ,
238+ ' Id' ,
239+ (String )id ,
240+ ' {"Name":"' + accName + ' ", ' +
241+ ' "AccountNumber":"' + accNumber + ' ",' +
242+ fields + ' }' );
233243 System .assertEquals (null , jsonResult ,
234244 ' Non-null result from RemoteTKController.upser' );
235245 Account account = [SELECT Id , Name , AccountNumber FROM Account WHERE Id = : id LIMIT 1 ];
236246 System .assertNotEquals (null , account ,
237247 ' Couldn\' t find account record after RemoteTKController.upser' );
238- System .assertEquals (accName + ' 2 ' , account .Name ,
248+ System .assertEquals (accName , account .Name ,
239249 ' Account name doesn\' t match after RemoteTKController.upser' );
240- System .assertEquals (accNumber + ' 2 ' , account .AccountNumber ,
250+ System .assertEquals (accNumber , account .AccountNumber ,
241251 ' Account number doesn\' t match after RemoteTKController.upser' );
242252
243- jsonResult = RemoteTKController .upser (' QXZXQZXZQXZQ' , ' Id' , (String )id , ' {"Name":"' + accName + ' 2 "}' );
253+ jsonResult = RemoteTKController .upser (' QXZXQZXZQXZQ' , ' Id' , (String )id , ' {"Name":"' + accName + ' "}' );
244254 assertError (jsonResult , ' NOT_FOUND' , ' RemoteTKController.upser' );
245255
246- jsonResult = RemoteTKController .upser (' Account' , ' Id' , (String )id , ' {"XQZXQZXQZXQZ" : "' + accName + ' 2 "}' );
256+ jsonResult = RemoteTKController .upser (' Account' , ' Id' , (String )id , ' {"XQZXQZXQZXQZ" : "' + accName + ' "}' );
247257 assertError (jsonResult , ' INVALID_FIELD' , ' RemoteTKController.upser' );
248258 }
249259
@@ -266,12 +276,31 @@ public class TestRemoteTKController{
266276 String accName = ' Test1' ;
267277 String accNumber = ' 1234' ;
268278
269- Id id = testCreate (accName , accNumber );
279+ // String field values
280+ Id id = testCreate (accName , accNumber , ' "AnnualRevenue" : "1000000",' +
281+ ' "NumberOfEmployees" : "1000",' +
282+ ' "Phone" : "(111) 222-3333"' );
283+ testDelete (id );
284+
285+ // Integer field values
286+ id = testCreate (accName , accNumber , ' "AnnualRevenue" : 1000000,' +
287+ ' "NumberOfEmployees" : 1000,' +
288+ ' "Phone" : "(111) 222-3333"' );
270289 testRetrieve (accName , accNumber , id );
271290 testQuery (accName , accNumber );
272291 testSearch (accName , accNumber , id );
273- testUpdate (accName , accNumber , id );
274- testUpsert (accName , accNumber , id );
292+ testUpdate (accName + ' 1' , accNumber + ' 1' , id , ' "AnnualRevenue" : "1100000",' +
293+ ' "NumberOfEmployees" : "1100",' +
294+ ' "Phone" : "(112) 222-3333"' );
295+ testUpdate (accName + ' 2' , accNumber + ' 2' , id , ' "AnnualRevenue" : "2000000",' +
296+ ' "NumberOfEmployees" : "2000",' +
297+ ' "Phone" : "(222) 222-3333"' );
298+ testUpsert (accName + ' 3' , accNumber + ' 3' , id , ' "AnnualRevenue" : 3000000,' +
299+ ' "NumberOfEmployees" : 3000,' +
300+ ' "Phone" : "(333) 222-3333"' );
301+ testUpsert (accName + ' 4' , accNumber + ' 4' , id , ' "AnnualRevenue" : 4000000,' +
302+ ' "NumberOfEmployees" : 4000,' +
303+ ' "Phone" : "(444) 222-3333"' );
275304 testDelete (id );
276305 }
277306}
0 commit comments