WWW-ClickSource

 view release on metacpan or  search on metacpan

t/04_catalyst_request.t  view on Meta::CPAN

use Test::More;

use strict;
use warnings;

eval "use Catalyst::Request";
plan skip_all => "Catalyst::Request required for this test"
    if $@;
    
plan tests => 6;

use_ok("WWW::ClickSource::Request");
use_ok('WWW::ClickSource::Request::CatalystRequest');


{
    my $catalyst_request = bless( {
                 'data_handlers' => {
                                      'application/json' => sub { "DUMMY" },
                                      'application/x-www-form-urlencoded' => sub { "DUMMY" }
                                    },
                 'env' => {},
                 'cookies' => {},
                 'query_keywords' => '',
                 'protocol' => 'HTTP/1.1',
                 'hostname' => '1.2.3.4',
                 'remote_user' => undef,
                 'address' => '1.2.3.4',
                 '_path' => 'coldwell-banker-anunturi/de-vanzare-teren-500-m-sup-2-sup-in-cluj-napoca-zona-manastur-cbl04434.html',
                 'headers' => bless( {
                                       'x-forwarded-for' => '1.2.3.4',
                                       'accept' => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
                                       'x-forwarded-port' => '80',
                                       '::std_case' => {
                                                         'x-forwarded-port' => 'X-FORWARDED-PORT',
                                                         'cookie' => 'COOKIE',
                                                         'x-forwarded-for' => 'X-FORWARDED-FOR'
                                                       },
                                       'referer' => 'https://www.google.ro',
                                       'user-agent' => 'Mozilla/5.0 (Windows NT 6.0; rv:45.0) Gecko/20100101 Firefox/45.0',
                                       'accept-encoding' => 'gzip, deflate',
                                       'accept-language' => 'en-US,en;q=0.5',
                                       'cookie' => '',
                                       'host' => 'mysite.com'
                                     }, 'HTTP::Headers' ),
                 'base' => bless( do{\(my $o = 'http://mysite.com:5001/')}, 'URI::http' ),
                 'uri' => bless( do{\(my $o = 'http://mysite.com:5001/coldwell-banker-anunturi/de-vanzare-teren-500-m-sup-2-sup-in-cluj-napoca-zona-manastur-cbl04434.html')}, 'URI::http' ),
                 'captures' => [],
                 'method' => 'GET',
                 '_read_length' => 0,
                 '_body' => 0,
                 'arguments' => [
                                  'coldwell-banker-anunturi',
                                  'de-vanzare-teren-500-m-sup-2-sup-in-cluj-napoca-zona-manastur-cbl04434.html'
                                ],
                 'uploads' => {},
                 'secure' => 0,
                 'action' => '/',
                 'body_parameters' => {},
                 'match' => '/',
                 'parameters' => {},
                 '_use_hash_multivalue' => 0,
                 'query_parameters' => {},
                 '_read_position' => 0
               }, 'Catalyst::Request' );               



    isa_ok($catalyst_request,'Catalyst::Request', 'Object 1 built correctly');

    my $click_source_request = WWW::ClickSource::Request->new($catalyst_request);
    
    is_deeply($click_source_request,bless( {
                 'referer' => bless( do{\(my $o = 'https://www.google.ro')}, 'URI::https' ),
                 'params' => {},
                 'host' => 'mysite.com'
               }, 'WWW::ClickSource::Request::CatalystRequest' ), "Goole organic request as expected");
}

{
    my $catalyst_request = bless( {
                 '_use_hash_multivalue' => 0,
                 'query_parameters' => {
                                         'utm_source' => 'facebook.com',



( run in 1.723 second using v1.01-cache-2.11-cpan-600a1bdf6e4 )