Пример #1
0
 protected function checkSerializeArray($data, Serializer $serializer)
 {
     $replace = array();
     foreach ($data as $key => $value) {
         if ($this->checkIfWalkerIsNeeded($value)) {
             $data[$key] = $serializer->serialize($value);
         }
     }
     return $data;
 }
Пример #2
0
 /**
  * Test serialization of an array
  */
 public function testArraySerialization()
 {
     $request = new JsonRequestWithArray();
     $jsonWalker = new Json();
     $serilizer = new Serializer();
     $serilizer->setVisitor($jsonWalker);
     $serilizedData = $jsonWalker->visit($request, $serilizer);
     $this->assertJson($serilizedData, "Walker did not return json");
     $this->assertJsonStringEqualsJsonString($serilizedData, '{"test":1,"test2":2,"arrayValue":[{"test":1,"test2":2},{"test":1,"test2":2}]}');
 }
Пример #3
0
 /**
  * Test serialization of an array
  */
 public function testArraySerialization()
 {
     $request = new UrlRequestWithArray();
     $formWalker = new UrlEncode();
     $serilizer = new Serializer();
     $serilizer->setVisitor($formWalker);
     $serilizer->setVisitor(new Json());
     $serilizedData = $formWalker->visit($request, $serilizer);
     $this->assertEquals("test=1&test2=2&arrayValue=%5B%7B%22test%22%3A1%2C%22test2%22%3A2%7D%2C%7B%22test%22%3A1%2C%22test2%22%3A2%7D%5D", $serilizedData, "Message serilized string is not what is expected");
 }
Пример #4
0
 protected function checkSerializeArray($data, Serializer $serializer)
 {
     $replace = array();
     foreach ($data as $key => $value) {
         if ($value instanceof FileInterface) {
             $data[$key] = 'FILE::' . $value->getPath();
             $this->fileFields[] = $key;
         } elseif ($this->checkIfWalkerIsNeeded($value)) {
             $data[$key] = $serializer->serialize($value);
         }
     }
     return $data;
 }
Пример #5
0
 /**
  * Test if an exception gets raised if a walker could not be found
  */
 public function testSerializerCouldNotFindVisitor()
 {
     try {
         $serializer = new Serializer();
         $serializer->serialize(new NonRecursiveJsonRequest());
         $this->fail("No exception was raised");
     } catch (AbstractException $e) {
         $this->assertInstanceOf('Upg\\Library\\Serializer\\Exception\\VisitorCouldNotBeFound', $e, "Incorrect Exception type raised");
     } catch (\Exception $e) {
         $instance = get_class($e);
         $this->fail("A non library serializer exception was raised instance is {$instance}, got: {$e->getMessage()}");
     }
 }
Пример #6
0
 /**
  * Set request that MAC needs to be calculated on
  * @param AbstractRequest $request
  * @return $this
  * @throws \Upg\Library\Serializer\Exception\VisitorCouldNotBeFound
  */
 public function setRequest(AbstractRequest $request)
 {
     $data = array();
     /**Serialize the any sub objects**/
     foreach ($request->getSerializerData() as $key => $value) {
         if ($this->needsToBeSerialized($value)) {
             $data[$key] = $this->serializer->serialize($value);
         } else {
             $data[$key] = $value;
         }
     }
     $this->setCalculationArray($data);
     return $this;
 }
 public function testRecursiveSerialization()
 {
     $request = new MultipartRequest();
     $multipartRequest = new MultipartFormData();
     $request->data = array('test1' => 1, 'json' => new NonRecursiveJsonRequest());
     $serializer = new Serializer();
     $serializer->setVisitor(new Json());
     $serilizedData = $multipartRequest->visit($request, $serializer);
     $this->assertNotEmpty($serilizedData, "serializer returned nothing");
     $this->assertArrayHasKey('test1', $serilizedData, "test1 field is non existent");
     $this->assertArrayHasKey('json', $serilizedData, "test1 field is non existent");
     $this->assertEquals(1, $serilizedData['test1']);
     $this->assertJson($serilizedData['json']);
     $this->assertJsonStringEqualsJsonString($serilizedData['json'], '{"test":1,"test2":2}');
 }