Exemplo n.º 1
0
 def test_ssl_verification(self):
     s = HTTPServer('https://test/')
     s.session.cert = '/path/to/cert'
     s.session.verify = 'ca-cert'
     req = Request('go')
     with self.assertRaises(requests.exceptions.RequestException):
         s._send_message(req)
Exemplo n.º 2
0
 def test_send_message_with_success_200():
     s = HTTPServer('http://test/')
     responses.add(responses.POST,
                   'http://test/',
                   status=200,
                   body='{"jsonrpc": "2.0", "result": 5, "id": 1}')
     s._send_message(Request('go'))
Exemplo n.º 3
0
 def test_send_message_with_invalid_request(self):
     s = HTTPServer('http://test/')
     # Impossible to pass an invalid dict, so just assume the exception was raised
     responses.add(responses.POST,
                   'http://test/',
                   status=400,
                   body=requests.exceptions.InvalidSchema())
     with self.assertRaises(requests.exceptions.InvalidSchema):
         s._send_message(Request('go'))
Exemplo n.º 4
0
    def __init__(self):
        self.server = HTTPServer('http://127.0.0.1:5000/api')
 

        self.config = configparser.ConfigParser()

        if (os.path.isfile('/home/andy/.ludicode')):
            self.config.read('/home/andy/.ludicode')
        else:
            self.createDefaultConfig('/home/andy/.ludicode')
        self.uuid = self.config[self.game]['uuid']
        super(LudiClient,self).__init__()
Exemplo n.º 5
0
 def test_send_message_custom_headers(self):
     s = HTTPServer('http://test/')
     req = Request('go')
     with self.assertRaises(requests.exceptions.RequestException):
         s._send_message(req,
                         headers={'Content-Type': 'application/json-rpc'})
     # Header set by argument
     self.assertEqual('application/json-rpc',
                      s.last_request.headers['Content-Type'])
     # Header set by DEFAULT_HEADERS
     self.assertEqual('application/json', s.last_request.headers['Accept'])
     # Header set by Requests default_headers
     self.assertIn('Content-Length', s.last_request.headers)
Exemplo n.º 6
0
 def test_init_default_headers(self):
     s = HTTPServer('http://test/')
     # Default headers
     self.assertEqual('application/json', s.session.headers['Content-Type'])
     self.assertEqual('application/json', s.session.headers['Accept'])
     # Ensure the Requests default_headers are also there
     self.assertIn('Connection', s.session.headers)
Exemplo n.º 7
0
class LudiClient(LudiCore):

    
    def __init__(self):
        self.server = HTTPServer('http://127.0.0.1:5000/api')
 

        self.config = configparser.ConfigParser()

        if (os.path.isfile('/home/andy/.ludicode')):
            self.config.read('/home/andy/.ludicode')
        else:
            self.createDefaultConfig('/home/andy/.ludicode')
        self.uuid = self.config[self.game]['uuid']
        super(LudiClient,self).__init__()

            
    def createDefaultConfig(self, fname):
        self.config['DEFAULT'] = {'uuid': self.newUUID(),
                             'UserName': '******'}
        self.config['Server'] = {'uuid': self.newUUID(),
                             'ServerName': 'Warpzone MS'}
        # TODO: Schreibfehler abfangen
        with open(fname, 'w') as configfile:
            self.config.write(configfile)

    def connectToServer(self):
        print("Connecting to Server... " , end = '')
        result = self.server.request('ludicode', self.sendMessage(0))
        if (result[0] == 1):
            print("Ok")
            print("Server: ",result[1]['ServerName'])
            
        print("Requesting available games... ",end='')
        result = self.server.request('ludicode', self.sendMessage(2))
        if (result[0] == 3):
            print("Ok")
            print(', '.join(result[1]['GameList']))
            if (self.game in result[1]['GameList']):
                print(self.game, " is available")
                print("Registering Player (%s)... " % self.config[self.game]['username'],end='')
                result = self.server.request('ludicode', self.sendMessage(6,{"uuid":self.config[self.game]['uuid'],"username":self.config[self.game]['username']}))
                if (result[0] == 7):
                    print("Ok")
                    print("User registered")
Exemplo n.º 8
0
 def __init__(self, host, port, user, pwd):
     """__init__"""
     self.url = 'http://{0}:{1}/'.format(host, port)
     self.server = HTTPServer(self.url + 'jsonrpc',
                              headers={'content-type': 'application/json'},
                              auth=(user, pwd))
     for namespace in KODI_JSON_NAMESPACES:
         self.__dict__[namespace] = KodiNamespaceMethodCatcher(
             self.server, namespace)
Exemplo n.º 9
0
 def test_init_custom_headers(self):
     s = HTTPServer('http://test/')
     s.session.headers['Content-Type'] = 'application/json-rpc'
     # Header set by argument
     self.assertEqual('application/json-rpc',
                      s.session.headers['Content-Type'])
     # Header set by DEFAULT_HEADERS
     self.assertEqual('application/json', s.session.headers['Accept'])
     # Header set by Requests default_headers
     self.assertIn('Connection', s.session.headers)
Exemplo n.º 10
0
 def test_send_message_with_connection_error(self):
     s = HTTPServer('http://test/')
     with self.assertRaises(requests.exceptions.RequestException):
         s._send_message(Request('go'))
Exemplo n.º 11
0
 def test_send_message_body(self):
     s = HTTPServer('http://test/')
     req = Request('go')
     with self.assertRaises(requests.exceptions.RequestException):
         s._send_message(req)
     self.assertEqual(urlencode(req), s.last_request.body)
Exemplo n.º 12
0
 def test_init_custom_auth():
     HTTPServer('http://test/')
Exemplo n.º 13
0
 def test_init_endpoint_only():
     HTTPServer('http://test/')