示例#1
0
    public function testSetCookieCanAppendOtherHeadersInWhenCreatingString()
    {
        $setCookieHeader = new SetCookie();
        $setCookieHeader->setName('myname');
        $setCookieHeader->setValue('myvalue');
        $setCookieHeader->setExpires('Wed, 13-Jan-2021 22:23:01 GMT');
        $setCookieHeader->setDomain('docs.foo.com');
        $setCookieHeader->setPath('/accounts');
        $setCookieHeader->setSecure(true);
        $setCookieHeader->setHttponly(true);

        $appendCookie = new SetCookie('othername', 'othervalue');
        $headerLine = $setCookieHeader->toStringMultipleHeaders(array($appendCookie));

        $target = 'Set-Cookie: myname=myvalue; Expires=Wed, 13-Jan-2021 22:23:01 GMT;'
            . ' Domain=docs.foo.com; Path=/accounts;'
            . ' Secure; HttpOnly, othername=othervalue';
        $this->assertEquals($target, $headerLine);
    }
示例#2
0
 public function testSetCookieFieldValueIsEmptyStringWhenNameIsUnset()
 {
     $setCookieHeader = new SetCookie();
     $this->assertSame('', $setCookieHeader->getFieldValue());
     // empty
     $setCookieHeader->setName('myname');
     $setCookieHeader->setValue('myvalue');
     $setCookieHeader->setExpires('Wed, 13-Jan-2021 22:23:01 GMT');
     $setCookieHeader->setDomain('docs.foo.com');
     $setCookieHeader->setPath('/accounts');
     $setCookieHeader->setSecure(true);
     $setCookieHeader->setHttponly(true);
     $target = 'myname=myvalue; Expires=Wed, 13-Jan-2021 22:23:01 GMT;' . ' Domain=docs.foo.com; Path=/accounts;' . ' Secure; HttpOnly';
     $this->assertSame($target, $setCookieHeader->getFieldValue());
     // not empty
     $setCookieHeader->setName(null);
     $this->assertSame('', $setCookieHeader->getFieldValue());
     // empty again
     $this->assertNull($setCookieHeader->getName());
 }