mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 15:41:43 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
#!/usr/bin/env python
 | 
						|
 | 
						|
import errno
 | 
						|
import socket
 | 
						|
import sys
 | 
						|
import unittest
 | 
						|
from test import support
 | 
						|
 | 
						|
import xmlrpc.client as xmlrpclib
 | 
						|
 | 
						|
class CurrentTimeTest(unittest.TestCase):
 | 
						|
 | 
						|
    def test_current_time(self):
 | 
						|
        # Get the current time from xmlrpc.com.  This code exercises
 | 
						|
        # the minimal HTTP functionality in xmlrpclib.
 | 
						|
        server = xmlrpclib.ServerProxy("http://time.xmlrpc.com/RPC2")
 | 
						|
        try:
 | 
						|
            t0 = server.currentTime.getCurrentTime()
 | 
						|
        except socket.error as e:
 | 
						|
            print("    test_current_time: skipping test, got error: %s" % e,
 | 
						|
                  file=sys.stderr)
 | 
						|
            return
 | 
						|
 | 
						|
        # Perform a minimal sanity check on the result, just to be sure
 | 
						|
        # the request means what we think it means.
 | 
						|
        t1 = xmlrpclib.DateTime()
 | 
						|
 | 
						|
        dt0 = xmlrpclib._datetime_type(t0.value)
 | 
						|
        dt1 = xmlrpclib._datetime_type(t1.value)
 | 
						|
        if dt0 > dt1:
 | 
						|
            delta = dt0 - dt1
 | 
						|
        else:
 | 
						|
            delta = dt1 - dt0
 | 
						|
        # The difference between the system time here and the system
 | 
						|
        # time on the server should not be too big.
 | 
						|
        self.assert_(delta.days <= 1)
 | 
						|
 | 
						|
 | 
						|
def test_main():
 | 
						|
    support.requires("network")
 | 
						|
    support.run_unittest(CurrentTimeTest)
 | 
						|
 | 
						|
if __name__ == "__main__":
 | 
						|
    test_main()
 |