Merge commit '4969f31e1f' into WebGUI8
This commit is contained in:
commit
e5b82bc861
61 changed files with 2199 additions and 521 deletions
|
|
@ -50,7 +50,7 @@ my @getRefererUrlTests = (
|
|||
);
|
||||
|
||||
use Test::More;
|
||||
plan tests => 79 + scalar(@getRefererUrlTests);
|
||||
plan tests => 83 + scalar(@getRefererUrlTests);
|
||||
|
||||
my $session = WebGUI::Test->session;
|
||||
my $request = $session->request;
|
||||
|
|
@ -81,7 +81,7 @@ is( $url2, $url.'?a=b;c=d', 'append second pair');
|
|||
#
|
||||
#######################################
|
||||
|
||||
my $gateway = $session->config->get('gateway');
|
||||
WebGUI::Test->originalConfig('gateway');
|
||||
$session->config->set('gateway', '/');
|
||||
|
||||
is( $session->config->get('gateway'), '/', 'Set gateway for downstream tests');
|
||||
|
|
@ -127,10 +127,7 @@ my $setting_hostToUse = $session->setting->get('hostToUse');
|
|||
$session->setting->set('hostToUse', 'HTTP_HOST');
|
||||
my $sitename = $session->config->get('sitename')->[0];
|
||||
is( $session->url->getSiteURL, 'http://'.$sitename, 'getSiteURL from config as http_host');
|
||||
my $config_port;
|
||||
if ($session->config->get('webServerPort')) {
|
||||
$config_port = $session->config->get('webServerPort');
|
||||
}
|
||||
WebGUI::Test->originalConfig('webServerPort');
|
||||
|
||||
$session->url->setSiteURL('http://webgui.org');
|
||||
is( $session->url->getSiteURL, 'http://webgui.org', 'override config setting with setSiteURL');
|
||||
|
|
@ -147,7 +144,7 @@ $env->{HTTP_HOST} = "devsite.com";
|
|||
$session->url->setSiteURL(undef);
|
||||
is( $session->url->getSiteURL, 'http://'.$sitename, 'getSiteURL where requested host is not a configured site');
|
||||
|
||||
my @config_sitename = @{ $session->config->get('sitename') };
|
||||
WebGUI::Test->originalConfig('sitename');
|
||||
$session->config->addToArray('sitename', 'devsite.com');
|
||||
$session->url->setSiteURL(undef);
|
||||
is( $session->url->getSiteURL, 'http://devsite.com', 'getSiteURL where requested host is not the first configured site');
|
||||
|
|
@ -166,14 +163,7 @@ is( $session->url->getSiteURL, 'http://'.$sitename.':8880', 'getSiteURL with a n
|
|||
|
||||
$session->url->setSiteURL('http://'.$sitename);
|
||||
is( $session->url->getSiteURL, 'http://'.$sitename, 'restore config setting');
|
||||
$session->config->set('sitename', \@config_sitename);
|
||||
$session->setting->set('hostToUse', $setting_hostToUse);
|
||||
if ($config_port) {
|
||||
$session->config->set('webServerPort', $config_port);
|
||||
}
|
||||
else {
|
||||
$session->config->delete('webServerPort');
|
||||
}
|
||||
|
||||
$url = 'level1 /level2/level3 ';
|
||||
$url2 = 'level1-/level2/level3';
|
||||
|
|
@ -277,14 +267,10 @@ is($session->url->makeAbsolute('page1'), '/page1', 'makeAbsolute: default baseUr
|
|||
#
|
||||
#######################################
|
||||
|
||||
my $origExtras = $session->config->get('extrasURL');
|
||||
my $extras = $origExtras;
|
||||
my $extras = WebGUI::Test->originalConfig('extrasURL');
|
||||
|
||||
my $savecdn = $session->config->get('cdn');
|
||||
if ($savecdn) {
|
||||
$session->config->delete('cdn');
|
||||
}
|
||||
# Note: the CDN configuration will be reverted in the END
|
||||
WebGUI::Test->originalConfig('cdn');
|
||||
$session->config->delete('cdn');
|
||||
|
||||
is($session->url->extras, $extras.'/', 'extras method returns URL to extras with a trailing slash');
|
||||
is($session->url->extras('foo.html'), join('/', $extras,'foo.html'), 'extras method appends to the extras url');
|
||||
|
|
@ -322,11 +308,6 @@ is($session->url->extras('/dir1/foo.html'), join('', $cdnCfg->{extrasSsl}, 'dir1
|
|||
'extras using extrasSsl with HTTPS');
|
||||
$env->{'psgi.url_scheme'} = "http";
|
||||
|
||||
$session->config->set('extrasURL', $origExtras);
|
||||
|
||||
# partial cleanup here; complete cleanup in END block
|
||||
$session->config->delete('cdn');
|
||||
|
||||
#######################################
|
||||
#
|
||||
# escape and unescape
|
||||
|
|
@ -354,10 +335,14 @@ is($session->url->urlize('HOME/PATH1'), 'home/path1', 'urlize: urls are lower ca
|
|||
is($session->url->urlize('home/'), 'home', '... trailing slashes removed');
|
||||
is($session->url->urlize('home is where the heart is'), 'home-is-where-the-heart-is', '... makeCompliant translates spaces to dashes');
|
||||
is($session->url->urlize('/home'), 'home', '... removes initial slash');
|
||||
is($session->url->urlize('home/../out-of-bounds'), 'home/out-of-bounds', '... removes multiple ../');
|
||||
is($session->url->urlize('home/./here'), 'home/here', '... removes multiple ./');
|
||||
is($session->url->urlize('home/../out-of-bounds'), 'home/out-of-bounds', '... removes ../');
|
||||
is($session->url->urlize('home/./here'), 'home/here', '... removes ./');
|
||||
is($session->url->urlize('home/../../out-of-bounds'), 'home/out-of-bounds', '... removes multiple ../');
|
||||
is($session->url->urlize('home/././here'), 'home/here', '... removes multiple ./');
|
||||
is($session->url->urlize('home -- here'), 'home-here', 'multiple dashes collapsed');
|
||||
is($session->url->urlize('home!@#$%^&*here'), 'home-here', 'non-word characters collapsed to single dash');
|
||||
is($session->url->urlize("home\x{2267}here"), 'home-here', 'non-word international characters removed');
|
||||
is($session->url->urlize("home\x{1EE9}here"), "home\x{1EE9}here", 'word international characters not removed');
|
||||
|
||||
#######################################
|
||||
#
|
||||
|
|
@ -405,6 +390,7 @@ TODO: {
|
|||
}
|
||||
|
||||
my $versionTag = WebGUI::VersionTag->getWorking($session);
|
||||
WebGUI::Test->addToCleanup($versionTag);
|
||||
my $statefulAsset = WebGUI::Asset->getRoot($session)->addChild({ className => 'WebGUI::Asset::Snippet' });
|
||||
$versionTag->commit;
|
||||
$session->asset( $statefulAsset );
|
||||
|
|
@ -436,7 +422,7 @@ is(
|
|||
#
|
||||
#######################################
|
||||
|
||||
my $origSSLEnabled = $session->config->get('sslEnabled');
|
||||
WebGUI::Test->originalConfig('sslEnabled');
|
||||
|
||||
##Test all the false cases, first
|
||||
|
||||
|
|
@ -472,9 +458,3 @@ ok($session->url->forceSecureConnection(), 'forced secure connection with no url
|
|||
ok($session->http->isRedirect, '... and redirect status code was set');
|
||||
is($session->http->getRedirectLocation, $secureUrl, '... and redirect status code was set');
|
||||
|
||||
$session->config->set('sslEnabled', $origSSLEnabled);
|
||||
|
||||
END { ##Always clean-up
|
||||
$session->asset($sessionAsset);
|
||||
$versionTag->rollback if defined $versionTag;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue