merge upstream phpxmlrpc
[plcapi.git] / php / phpxmlrpc / demo / client / python / test.py
1 #!/usr/bin/env python3
2 # -*- coding: iso-8859-1 -*-
3
4 import xmlrpc.client
5 import base64
6 #import sys
7
8 server = xmlrpc.client.ServerProxy("http://localhost/demo/server/server.php")
9
10 try:
11     print ("Got '" + server.examples.getStateName(32) + "'")
12
13     # Disabled as demo servers often are prevented from sending mail...
14     #r = server.mail.send(
15     #    "edd", "Test",
16     #    "Bonjour. Je m'appelle Gérard. Mañana. ", "freddy", "", "", 
17     #    'text/plain; charset="iso-8859-1"'
18     #    )
19     #if r:
20     #    print ("Mail sent OK")
21     #else:
22     #    print ("Error sending mail")
23
24     r = server.examples.echo('Three "blind" mice - ' + "See 'how' they run")
25     print (r)
26
27     # name/age example. this exercises structs and arrays
28     a = [ 
29             {'name': 'Dave', 'age': 35}, {'name': 'Edd', 'age': 45 },
30             {'name': 'Fred', 'age': 23}, {'name': 'Barney', 'age': 36 }
31         ]
32     r = server.examples.sortByAge(a)
33     print (r)
34
35     # test base 64
36     r = server.examples.decode64(b'Mary had a little lamb She tied it to a pylon')
37     print (r)
38     
39 except xmlrpc.client.Fault as err:
40     print("A fault occurred")
41     print("Fault code: %d" % err.faultCode)
42     print("Fault string: %s" % err.faultString)