Example #1
0
 public function testGetVaryString()
 {
     $this->object->setValue('key2', 'value2', 'default2');
     $this->object->setValue('key1', 'value1', 'default1');
     $data = ['key2' => 'value2', 'key1' => 'value1'];
     ksort($data);
     $this->assertEquals(sha1(serialize($data)), $this->object->getVaryString());
 }
Example #2
0
 /**
  * Send Vary cookie
  *
  * @return void
  */
 public function sendVary()
 {
     $varyString = $this->context->getVaryString();
     if ($varyString) {
         $sensitiveCookMetadata = $this->cookieMetadataFactory->createSensitiveCookieMetadata()->setPath('/');
         $this->cookieManager->setSensitiveCookie(self::COOKIE_VARY_STRING, $varyString, $sensitiveCookMetadata);
     } elseif ($this->request->get(self::COOKIE_VARY_STRING)) {
         $cookieMetadata = $this->cookieMetadataFactory->createSensitiveCookieMetadata()->setPath('/');
         $this->cookieManager->deleteCookie(self::COOKIE_VARY_STRING, $cookieMetadata);
     }
 }
Example #3
0
 /**
  * Return unique page identifier
  *
  * @return string
  */
 public function getValue()
 {
     $data = [$this->request->getUriString(), $this->request->get(\Magento\Framework\App\Response\Http::COOKIE_VARY_STRING) ?: $this->context->getVaryString()];
     return md5(serialize($data));
 }