CGI-Plus

 view release on metacpan or  search on metacpan

t/test.t  view on Meta::CPAN

	#
	# incoming cookies
	#------------------------------------------------------------------------------


	#------------------------------------------------------------------------------
	##- resend_cookie
	#
	do {
		my ($old_cookie, $new_cookie);
		my $cgi = CGI::Plus->new();
		my $name = 'resend_cookie';
		
		# get original cookie
		$old_cookie = $cgi->ic->{'cookie_multiple_vals'};
		is_def '$old_cookie', $old_cookie, "$name: get original cookie";
		
		# get resent cookie
		$new_cookie = $cgi->resend_cookie('cookie_multiple_vals');
		is_def '$new_cookie', $new_cookie, $old_cookie, "$name: get resent cookie";
		
		# should not be same object
		comp
			"$old_cookie",
			"$new_cookie",
			"$name: should not be same object",
			same => 0;
		
		# compare values
		comp
			$old_cookie->{'values'}->{'v'},
			$new_cookie->{'values'}->{'v'},
			"$name: compare values";
	};
	#
	# resend_cookie
	#------------------------------------------------------------------------------
	
	
	#------------------------------------------------------------------------------
	##- new_send_cookie
	#
	do {
		my ($cookie, %headers, $secondary_name);
		my $cgi = CGI::Plus->new();
		my $name = 'new_send_cookie';
		
		$secondary_name = 'new cookie with multiple values';
		$cookie = $cgi->new_send_cookie('new_cookie');
		is_def '$cookie', $cookie, "$name, $secondary_name: \$cookie";
		is_def "\$cookie->{'values'}", $cookie->{'values'}, "$name, $secondary_name: \$cookie->{'values'}";
		
		# set new value for x
		$cookie->{'values'}->{'x'} = 100;
		
		# get headers
		%headers = headers($cgi);
		
		$secondary_name = 'cookies should include new_cookie';
		FIND_COOKIE: {
			foreach my $cookie (@{$headers{'Set-Cookie'}}) {
				ok($cookie =~ m|^new_cookie=x&100;|s, "$name, $secondary_name: $cookie");
			}
		}
	};
	#
	# new_send_cookie
	#------------------------------------------------------------------------------
	
	
	#------------------------------------------------------------------------------
	##- set_header
	#
	do { ##i
		my (%headers);
		my $cgi = CGI::Plus->new();
		my $name = 'set_header';
		
		# set new header
		$cgi->set_header('myheader', 'whatever');
		
		# get headers
		%headers = headers($cgi);
		
		# chould have new header
		comp
			$headers{'Myheader'}->[0],
			'whatever',
			$name;
	};
	#
	# set_header
	#------------------------------------------------------------------------------


	#------------------------------------------------------------------------------
	##- set_content_type
	#
	do {
		my (%headers);
		my $cgi = CGI::Plus->new();
		my $name = 'set_header';
		
		# set new header
		$cgi->set_content_type('text/whatever');
		
		# get headers
		%headers = headers($cgi);
		
		# should have new header
		comp
			$headers{'Content-Type'}->[0],
			'text/whatever; charset=ISO-8859-1',
			$name;
	};
	#
	# set_content_type
	#------------------------------------------------------------------------------
	
};
#



( run in 0.584 second using v1.01-cache-2.11-cpan-39bf76dae61 )