summaryrefslogtreecommitdiffstats
path: root/kio/misc/kpac/kpactest.pac
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commitce4a32fe52ef09d8f5ff1dd22c001110902b60a2 (patch)
tree5ac38a06f3dde268dc7927dc155896926aaf7012 /kio/misc/kpac/kpactest.pac
downloadtdelibs-ce4a32fe52ef09d8f5ff1dd22c001110902b60a2.tar.gz
tdelibs-ce4a32fe52ef09d8f5ff1dd22c001110902b60a2.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdelibs@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kio/misc/kpac/kpactest.pac')
-rw-r--r--kio/misc/kpac/kpactest.pac169
1 files changed, 169 insertions, 0 deletions
diff --git a/kio/misc/kpac/kpactest.pac b/kio/misc/kpac/kpactest.pac
new file mode 100644
index 000000000..69e5aaad7
--- /dev/null
+++ b/kio/misc/kpac/kpactest.pac
@@ -0,0 +1,169 @@
+// This is a script to test KPAC.
+// To use it: set this script as proxy config file and run
+// dcop kded proxyscout proxyForURL http://blah (URL doesn't matter)
+// The answer must be http://<your IP>/<test results>
+// If you see "failed" in the output, lookup the test name in the comments
+// below and let me now at <[email protected]> or try to fix it yourself
+
+function FindProxyForURL( url, host )
+{
+ var result = "PROXY http://" + myIPAddress();
+
+ // plainhost1
+ if ( !isPlainHostName( "foo" ) )
+ result += "/plainhost1=failed"
+ // plainhost2
+ if ( isPlainHostName( "foo.bar" ) )
+ result += "/plainhost2=failed";
+
+ // dnsdomain1
+ if ( !dnsDomainIs( "foo.bar", "bar" ) )
+ result += "/dnsdomain1=failed";
+ // dnsdomain2
+ if ( dnsDomainIs( "foo.baz", "bar" ) )
+ result += "/dnsdomain2=failed";
+
+ // localordomain1
+ if ( !localHostOrDomainIs( "foo", "bar" ) )
+ result += "/localordomain1=failed";
+ // localordomain2
+ if ( !localHostOrDomainIs( "foo.bar", "foo.bar" ) )
+ result += "/localordomain2=failed";
+ // localordomain3
+ if ( !localHostOrDomainIs( "foo", "foo.baz" ) )
+ result += "/localordomain3=failed";
+ // localordomain4
+ if ( localHostOrDomainIs( "foo.bar", "foo.baz" ) )
+ result += "/localordomain4=failed";
+
+ // isresolvable1
+ // on failure make sure you can resolve www.kde.org correctly :-)
+ if ( !isResolvable( "www.kde.org" ) ) result += "/isresolvable1=failed";
+ // isresolvable2
+ // on failure make sure dummy.invalid doesn't resolve :-)
+ if ( isResolvable( "dummy.invalid" ) ) result += "/isresolvable2=failed";
+
+ // isinnet1
+ // on failure check if localhost resolves to 127.0.0.1 as it should
+ if ( isInNet( "localhost", "1.2.3.4", "255.0.0.0" ) )
+ result += "/isinnet1=failed";
+ // isinnet2
+ if ( isInNet( "1.2.3.4", "1.2.3.5", "255.255.255.255" ) )
+ result += "/isinnet2=failed";
+ // isinnet3
+ if ( !isInNet( "1.2.3.4", "1.2.3.5", "255.255.255.0" ) )
+ result += "/isinnet3=failed";
+
+ // dnsresolve1
+ // on failure check if localhost resolves to 127.0.0.1 as it should
+ if ( dnsResolve( "localhost" ) != "127.0.0.1" )
+ result += "/dnsresolve1=failed";
+
+ // dnslevels1
+ if ( dnsDomainLevels( "foo" ) != 0 )
+ result += "/dnslevels1=failed";
+ // dnslevels2
+ if ( dnsDomainLevels( "foo.bar" ) != 1 )
+ result += "/dnslevels2=failed";
+ // dnslevels3
+ if ( dnsDomainLevels( "foo.bar.baz" ) != 2 )
+ result += "/dnslevels3=failed";
+
+ // shexp1
+ if ( !shExpMatch( "foobar", "foobar" ) )
+ result += "/shexp1=failed";
+ // shexp2
+ if ( shExpMatch( "FoObAr", "foobar" ) )
+ result += "/shexp2=failed";
+ // shexp3
+ if ( !shExpMatch( "Foobar", "?oobar" ) )
+ result += "/shexp3=failed";
+ // shexp4
+ if ( !shExpMatch( "FoObAr", "*b*" ) )
+ result += "/shexp4=failed";
+ // shexp5
+ if ( shExpMatch( "FoObAr", "*x*" ) )
+ result += "/shexp5=failed";
+ // shexp6
+ if ( shExpMatch( "www.kde.org", "*.kde" ) )
+ result += "/shexp6=failed";
+
+ var now = new Date;
+ var days = new Array( "sun", "mon", "tue", "wed", "thu", "fri", "sat" );
+ var months = new Array( "jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec" );
+
+ // weekday1
+ if ( !weekdayRange( "sun", "sat" ) )
+ result += "/weekday1=failed";
+ // weekday2
+ if ( !weekdayRange( "sat", "sun" ) )
+ result += "/weekday2=failed";
+ // weekday3
+ if ( !weekdayRange( days[ now.getDay() ] ) )
+ result += "/weekday3=failed";
+ // weekday4
+ if ( weekdayRange( now.getDay() ? "sun" : "mon" ) )
+ result += "/weekday4=failed";
+
+ // date1
+ if ( !dateRange( now.getDate() ) )
+ result += "/date1=failed";
+ // date2
+ if ( !dateRange( now.getDate(), 31 ) )
+ result += "/date2=failed";
+ // date3
+ if ( !dateRange( 1, now.getDate() ) )
+ result += "/date3=failed";
+ // date4
+ if ( dateRange( now.getDay() > 5 ? 1 : 6, now.getDay() > 5 ? 3 : 8 ) )
+ result += "/date4=failed";
+ // date5
+ if ( !dateRange( months[ now.getMonth() ] ) )
+ result += "/date5=failed";
+ // date6
+ if ( !dateRange( months[ now.getMonth() ], "dec" ) )
+ result += "/date6=failed";
+ // date7
+ if ( !dateRange( "dec", months[ now.getMonth() ] ) )
+ result += "/date7=failed";
+ // date8
+ if ( !dateRange( now.getFullYear() ) )
+ result += "/date8=failed";
+ // date9
+ if ( dateRange( now.getFullYear() - 1 ) )
+ result += "/date9=failed";
+ // date10
+ // if this fails, check your clock first :-)
+ if ( dateRange( 1, "jan", 1990, 31, "dec", 2000 ) )
+ result += "/date10=failed";
+ // date11
+ // if this fails, check your clock first :-)
+ if ( !dateRange( 1, "jan", 2000, 31, "dec", 3000 ) )
+ result += "/date11=failed";
+
+ // time1
+ if ( !timeRange( now.getHours() ) )
+ result += "/time1=failed";
+ // time2
+ if ( !timeRange( now.getHours(), now.getMinutes(), 0, 0 ) )
+ result += "/time2=failed";
+ // time3
+ if ( !timeRange( now.getHours(), now.getMinutes(), now.getSeconds(), 0, 0, 0 ) )
+ result += "/time3=failed";
+ // time4
+ if ( timeRange( now.getHours() > 5 ? 1 : 6, now.getHours() > 5 ? 3 : 8 ) )
+ result += "/time4=failed";
+ // time5
+ if ( now.getHours() == now.getUTCHours() )
+ result += "/time5=skipped";
+ else if ( timeRange( now.getUTCHours() ) )
+ result += "/time5=failed";
+ // time6
+ if ( now.getHours() == now.getUTCHours() )
+ result += "/time6=skipped";
+ else if ( !timeRange( now.getUTCHours(), "GMT" ) )
+ result += "/time6=failed";
+
+ return result;
+}
+