modernize extras
authorgggeek <giunta.gaetano@gmail.com>
Thu, 31 Dec 2020 14:19:40 +0000 (14:19 +0000)
committergggeek <giunta.gaetano@gmail.com>
Thu, 31 Dec 2020 14:19:40 +0000 (14:19 +0000)
.travis.yml
extras/test.pl
extras/test.py

index 4e66ee5..ce75cec 100644 (file)
@@ -37,6 +37,7 @@ before_install:
   - sudo apt-get update -qq
   # Just in case there are git misconfigurations: make sure scripts are executable
   - sudo chmod 755 ./tests/ci/setup/*.sh
+  - sudo ./tests/ci/setup/setup_perl.sh
   - sudo ./tests/ci/setup/setup_apache.sh
   - sudo ./tests/ci/setup/setup_privoxy.sh
   - ./tests/ci/setup/setup_php_travis.sh
index 6b3cec0..320fbe6 100644 (file)
@@ -1,52 +1,61 @@
-#!/usr/local/bin/perl\r
-\r
-use Frontier::Client;\r
-\r
-my $serverURL='http://phpxmlrpc.sourceforge.net/server.php';\r
-\r
-# try the simplest example\r
-\r
-my $client = Frontier::Client->new( 'url' => $serverURL,\r
-               'debug' => 0, 'encoding' => 'iso-8859-1' );\r
-my $resp = $client->call("examples.getStateName", 32);\r
-\r
-print "Got '${resp}'\n";\r
-\r
-# now send a mail to nobody in particular\r
-\r
-$resp = $client->call("mail.send", ("edd", "Test",  \r
-       "Bonjour. Je m'appelle Gérard. Mañana. ", "freddy", "", "", \r
-       'text/plain; charset="iso-8859-1"'));\r
-\r
-if ($resp->value()) {\r
-       print "Mail sent OK.\n";\r
-} else {\r
-       print "Error sending mail.\n";\r
-}\r
-\r
-# test echoing of characters works fine\r
-\r
-$resp = $client->call("examples.echo", 'Three "blind" mice - ' . \r
-       "See 'how' they run");\r
-print $resp . "\n";\r
-\r
-# test name and age example. this exercises structs and arrays \r
-\r
-$resp = $client->call("examples.sortByAge", \r
-                                                                                       [ { 'name' => 'Dave', 'age' => 35},\r
-                                                                                               { 'name' => 'Edd', 'age' => 45 },\r
-                                                                                               { 'name' => 'Fred', 'age' => 23 },\r
-                                                                                               { 'name' => 'Barney', 'age' => 36 } ] );\r
-\r
-my $e;\r
-foreach $e (@$resp) {\r
-       print $$e{'name'} . ", " . $$e{'age'} . "\n";\r
-}\r
-\r
-# test base64\r
-\r
-$resp = $client->call("examples.decode64", \r
-                                                                                       $client->base64("TWFyeSBoYWQgYSBsaXR0bGUgbGFtYiBTaGUgd" .\r
-                                                                                                                                                       "GllZCBpdCB0byBhIHB5bG9u"));\r
-\r
-print $resp . "\n";\r
+#!/usr/local/bin/perl
+
+use Frontier::Client;
+
+my $serverURL='http://gggeek.altervista.org/sw/xmlrpc/demo/server/server.php';
+
+# try the simplest example
+
+my $client = Frontier::Client->new(
+    'url' => $serverURL, 'debug' => 0, 'encoding' => 'iso-8859-1'
+);
+my $resp = $client->call("examples.getStateName", 32);
+
+print "Got '${resp}'\n";
+
+# now send a mail to nobody in particular
+
+$resp = $client->call("mail.send", (
+    "edd",
+    "Test",
+    "Bonjour. Je m'appelle Gérard. Mañana. ",
+    "freddy",
+    "",
+    "",
+    'text/plain; charset="iso-8859-1"')
+);
+
+if ($resp->value()) {
+    print "Mail sent OK.\n";
+} else {
+    print "Error sending mail.\n";
+}
+
+# test echoing of characters works fine
+
+$resp = $client->call("examples.echo", 'Three "blind" mice - ' . "See 'how' they run");
+print $resp . "\n";
+
+# test name and age example. this exercises structs and arrays
+
+$resp = $client->call("examples.sortByAge",
+    [
+        { 'name' => 'Dave', 'age' => 35},
+        { 'name' => 'Edd', 'age' => 45 },
+        { 'name' => 'Fred', 'age' => 23 },
+        { 'name' => 'Barney', 'age' => 36 }
+    ]
+);
+
+my $e;
+foreach $e (@$resp) {
+    print $$e{'name'} . ", " . $$e{'age'} . "\n";
+}
+
+# test base64
+
+$resp = $client->call("examples.decode64",
+    $client->base64("TWFyeSBoYWQgYSBsaXR0bGUgbGFtYiBTaGUgdGllZCBpdCB0byBhIHB5bG9u")
+);
+
+print $resp . "\n";
index adc0aea..034eb8a 100644 (file)
@@ -1,37 +1,47 @@
-#!/usr/local/bin/python\r
-\r
-from xmlrpclib import *\r
-import sys\r
-\r
-server = Server("http://phpxmlrpc.sourceforge.net/server.php")\r
-\r
-try:\r
-    print "Got '" + server.examples.getStateName(32) + "'"\r
-\r
-    r = server.mail.send("edd", "Test",\r
-                         "Bonjour. Je m'appelle Gérard. Mañana. ", "freddy", "", "", \r
-                         'text/plain; charset="iso-8859-1"')\r
-    if r:\r
-        print "Mail sent OK"\r
-    else:\r
-        print "Error sending mail"\r
-\r
-\r
-    r = server.examples.echo('Three "blind" mice - ' + "See 'how' they run")\r
-    print r\r
-\r
-    # name/age example. this exercises structs and arrays\r
-\r
-    a = [ {'name': 'Dave', 'age': 35}, {'name': 'Edd', 'age': 45 },\r
-          {'name': 'Fred', 'age': 23}, {'name': 'Barney', 'age': 36 }]\r
-    r = server.examples.sortByAge(a)\r
-    print r\r
-\r
-    # test base 64\r
-    b = Binary("Mary had a little lamb She tied it to a pylon")\r
-    b.encode(sys.stdout)\r
-    r = server.examples.decode64(b)\r
-    print r\r
-    \r
-except Error, v:\r
-    print "XML-RPC Error:",v\r
+#!/usr/bin/env python3
+# -*- coding: iso-8859-1 -*-
+
+import xmlrpc.client
+import base64
+import sys
+
+server = xmlrpc.client.ServerProxy("http://gggeek.altervista.org/sw/xmlrpc/demo/server/server.php")
+
+try:
+    print ("Got '" + server.examples.getStateName(32) + "'")
+
+    # Disabled as demo servers often are prevented from sending mail...
+    #r = server.mail.send(
+    #    "edd", "Test",
+    #    "Bonjour. Je m'appelle Gérard. Mañana. ", "freddy", "", "", 
+    #    'text/plain; charset="iso-8859-1"'
+    #    )
+    #if r:
+    #    print ("Mail sent OK")
+    #else:
+    #    print ("Error sending mail")
+
+    r = server.examples.echo('Three "blind" mice - ' + "See 'how' they run")
+    print (r)
+
+    # name/age example. this exercises structs and arrays
+
+    a = [ 
+            {'name': 'Dave', 'age': 35}, {'name': 'Edd', 'age': 45 },
+            {'name': 'Fred', 'age': 23}, {'name': 'Barney', 'age': 36 }
+        ]
+    r = server.examples.sortByAge(a)
+    print (r)
+
+    # test base 64
+    b = 'Mary had a little lamb She tied it to a pylon'
+    b = base64.b64encode(b.encode('ascii'))
+    #print(b)
+    r = server.examples.decode64(b)
+    print (r)
+    
+except xmlrpc.client.Fault as err:
+    print("A fault occurred")
+    print("Fault code: %d" % err.faultCode)
+    print("Fault string: %s" % err.faultString)
+