Key/Value pair
1 auto req = DataRequest(); 2 req.encode(); 3 assert(req.encoded == ""); 4 req.urlEncode = true; 5 try 6 { 7 req.encode(); 8 assert(false); 9 } 10 catch (PhabricatorAPIException e) 11 { 12 assert(e.msg == "URL encoded but no values"); 13 } 14 15 req.raw ~= "test"; 16 try 17 { 18 req.encode(); 19 assert(false); 20 } 21 catch (PhabricatorAPIException e) 22 { 23 assert(e.msg == "URL encoded but no values"); 24 } 25 26 DataRequest.KeyValue[] function(string[]) fxn = 27 function DataRequest.KeyValue[](string[] state) 28 { 29 DataRequest.KeyValue[] objs; 30 foreach (obj; state) 31 { 32 auto test = DataRequest.KeyValue(); 33 test.key = "test"; 34 test.value = obj; 35 objs ~= test; 36 } 37 38 return objs; 39 }; 40 41 req.urlFunction = fxn; 42 req.encode(); 43 assert(req.encoded == "test=test"); 44 req.raw ~= "test2"; 45 req.encode(); 46 assert(req.encoded == "test=test&test=test2");
Data requests