Beispiel #1
0
def test_raise_error_500():
    error.raise_500 = MagicMock(name='raise_500')
    response = requests.Response()
    response.status_code = 500
    error.raise_errors(response)

    error.raise_500.assert_called_with(response)
Beispiel #2
0
def test_raise_error_unknown():
    response = requests.Response()
    response.status_code = 999
    response.raise_for_status = MagicMock(name='raise_for_status')
    error.raise_errors(response)

    response.raise_for_status.assert_called_with()
Beispiel #3
0
def test_raise_error_404():
    error.raise_404 = MagicMock(name='raise_404')
    response = requests.Response()
    response.status_code = 404
    error.raise_errors(response)

    error.raise_404.assert_called_with(response)
Beispiel #4
0
    def upload_app(self, app):
        """ Sube una aplicación para el controlador

        : app param nombre : La ruta de acceso al archivo sea cargado

        """
        url = self._core_base_url + 'apps'
        r = self.restclient.post(url, app, is_file=True)
        raise_errors(r)
Beispiel #5
0
    def upload_app(self, app):
        """ Upload an application to the controller

        :param filename app: The path to the file to be uploaded

        """
        url = self._core_base_url + 'apps'
        r = self.restclient.post(url, app, is_file=True)
        raise_errors(r)
Beispiel #6
0
    def uninstall_app(self, app):
        """ Uninstall and delete an application from the controller

        :param str app: The application to be uninstalled

        """
        url = self._core_base_url + 'apps/{}'.format(app)
        r = self.restclient.delete(url)
        raise_errors(r)
Beispiel #7
0
    def delete_diag_packet(self, packet_uid):
        """ Delete a diagnostic packet

        :param str packet_uid: The uid of the packet to be deleted

        """
        url = self._diag_base_url + 'packets/{}'.format(packet_uid)
        r = self.restclient.delete(url)
        raise_errors(r)
Beispiel #8
0
    def add_license(self, key):
        """ Add a new license

       :param str key: The license key to add

        """
        url = self._core_base_url + 'licenses'
        r = self.restclient.post(url, key)
        raise_errors(r)
Beispiel #9
0
    def delete_meter(self, dpid, meter_id):
        """Eliminar un metro

        : param str dpid : El camino de datos de identificación
        : param str meter_id : El ID de metro a borrar
        """
        url = (self._of_base_url +
               'datapaths/{0}/meters/{1}'.format(urllib.quote(dpid), meter_id))
        r = self.restclient.put(url, self.auth)
        raise_errors(r)
Beispiel #10
0
    def deactivate_license(self, serial_no):
        """ Desactivar una licencia

        : param str serial_no : El número de serie de la licencia para deactivatee

        """
        action = json.dumps({"action": "deactivate"})
        url = self._core_base_url + 'licenses/{}'.format(serial_no)
        r = self.restclient.post(url, action)
        raise_errors(r)
Beispiel #11
0
    def manage_app(self, app, action):
        """ instalar , Iniciar o detener una aplicación en el controlador

        : app str param : La aplicación para gestionar
        : acción str param : La acción a realizar ( "start" , " stop " o " instalar" )

        """
        url = self._core_base_url + 'apps/{}/action'.format(app)
        r = self.restclient.post(url, action)
        raise_errors(r)
Beispiel #12
0
    def create_diag_packet(self, packet):
        """ Create a diagnostic packet

        :param str packet: The packet to create

        """
        data = {"packet": packet.to_dict()}
        url = self._diag_base_url + 'packets'
        r = self.restclient.post(url, json.dumps(data))
        raise_errors(r)
Beispiel #13
0
    def create_diag_packet(self, packet):
        """ Ccrear un paquete de diagnóstico

        : paquete str param : El paquete para crear

        """
        data = {"packet": packet.to_dict()}
        url = self._diag_base_url + 'packets'
        r = self.restclient.post(url, json.dumps(data))
        raise_errors(r)
Beispiel #14
0
    def manage_app(self, app, action):
        """ Install, Start or Stop an application on the controller

        :param str app: The application to manage
        :param str action: The action to perform ("start", "stop" or "install")

        """
        url = self._core_base_url + 'apps/{}/action'.format(app)
        r = self.restclient.post(url, action)
        raise_errors(r)
Beispiel #15
0
    def deactivate_license(self, serial_no):
        """ Deactivate a license

        :param str serial_no: The serial number of the license to deactivate

        """
        action = json.dumps({"action": "deactivate"})
        url = self._core_base_url + 'licenses/{}'.format(serial_no)
        r = self.restclient.post(url, action)
        raise_errors(r)
Beispiel #16
0
    def delete_diag_observation_post(self, observation):
        """ Delete a diagnostic observation post

        :param str observation: The observation post to delete

        """
        data = {"observation": observation.to_dict()}
        url = self._diag_base_url + 'observations'
        r = self.restclient.delete(url, json.dumps(data))
        raise_errors(r)
Beispiel #17
0
    def set_diag_packet_action(self, packet_uid, action):
        """ Realiza la acción de simulación especificado en un paquete

        : param str packet_uid : El UID de paquetes
        : acción str param : La acción a realizar
        """
        data = {"simulation": action}
        url = self._diag_base_url + 'packets/{}/action'.format(packet_uid)
        r = self.restclient.post(url, json.dumps(data))
        raise_errors(r)
Beispiel #18
0
    def delete_diag_observation_post(self, observation):
        """ Eliminar un puesto de observación de diagnóstico

        : str param observación: El puesto de observación para borrar

        """
        data = {"observation": observation.to_dict()}
        url = self._diag_base_url + 'observations'
        r = self.restclient.delete(url, json.dumps(data))
        raise_errors(r)
Beispiel #19
0
    def add_meter(self, dpid, meter):
        """Añadir un nuevo medidor a la DPID suministrado

        : param str dpid :
        : param hpsdnclient.datatypes.Meter metro : El nuevo objeto Meter

        """
        url = (self._of_base_url +
               'datapaths/{0}/meters'.format(urllib.quote(dpid)))
        r = self.restclient.post(url, json.dumps(meter.to_dict()))
        raise_errors(r)
Beispiel #20
0
    def update_group(self, dpid, group_id, group):
        """Actualización de un grupo

        : param str dpid : El camino de datos de identificación
        : Grupo hpsdnclient.datatypes.Group param : El grupo para agregar

        """
        url = (self._of_base_url +
               'datapaths/{0}/groups/{1}'.format(urllib.quote(dpid), group_id))
        r = self.restclient.post(url, json.dumps(group.to_dict()))
        raise_errors(r)
Beispiel #21
0
    def delete_diag_packet(self, packet_uid):
        """ Eliminar un paquete de diagnóstico

        : param str packet_uid : El fluido del paquete que desea eliminar



        """
        url = self._diag_base_url + 'packets/{}'.format(packet_uid)
        r = self.restclient.delete(url)
        raise_errors(r)
Beispiel #22
0
    def create_diag_observation_post(self, observation):
        """ Crea un puesto de observación de diagnóstico

        : hpsdnclient.datatypes.Observation param observación:
            El puesto de observación para crear

        """
        data = {"observation": observation.to_dict()}
        url = self._diag_base_url + 'observations'
        r = self.restclient.post(url, json.dumps(data))
        raise_errors(r)
Beispiel #23
0
    def delete_meter(self, dpid, meter_id):
        """Delete a meter

        :param str dpid: The datapath ID
        :param str meter_id: The meter ID to be deleted

        """
        url = (self._of_base_url +
               'datapaths/{0}/meters/{1}'.format(urllib.quote(dpid), meter_id))
        r = self.restclient.put(url, self.auth)
        raise_errors(r)
Beispiel #24
0
    def add_meter(self, dpid, meter):
        """Add a new meter to the supplied DPID

        :param str dpid:
        :param hpsdnclient.datatypes.Meter meter: The new Meter object

        """
        url = (self._of_base_url +
               'datapaths/{0}/meters'.format(urllib.quote(dpid)))
        r = self.restclient.post(url, json.dumps(meter.to_dict()))
        raise_errors(r)
Beispiel #25
0
    def create_diag_observation_post(self, observation):
        """ Creates a diagnostic observation post

        :param hpsdnclient.datatypes.Observation observation:
            The observation post to create

        """
        data = {"observation": observation.to_dict()}
        url = self._diag_base_url + 'observations'
        r = self.restclient.post(url, json.dumps(data))
        raise_errors(r)
Beispiel #26
0
    def delete_groups(self, dpid, group_id):
        """Delete a group

        :param str dpid: The datapath ID
        :param str group_id: The group ID to delete

        """
        url = (self._of_base_url +
               'datapaths/{0}/groups/{1}'.format(urllib.quote(dpid), group_id))
        r = self.restclient.delete(url, self.auth)
        raise_errors(r)
Beispiel #27
0
    def set_diag_packet_action(self, packet_uid, action):
        """ Performs the specified simulation action on a packet

        :param str packet_uid: The packet UID
        :param str action: The action to perform

        """
        data = {"simulation": action}
        url = self._diag_base_url + 'packets/{}/action'.format(packet_uid)
        r = self.restclient.post(url, json.dumps(data))
        raise_errors(r)
Beispiel #28
0
    def update_group(self, dpid, group_id, group):
        """Update a group

        :param str dpid: The datapath ID
        :param hpsdnclient.datatypes.Group group: The group to add

        """
        url = (self._of_base_url +
               'datapaths/{0}/groups/{1}'.format(urllib.quote(dpid), group_id))
        r = self.restclient.post(url, json.dumps(group.to_dict()))
        raise_errors(r)
Beispiel #29
0
    def add_group(self, dpid, group):
        """Create a group

        :param str dpid: The datapath ID
        :param hpsdnclient.datatypes.Group group: The group to add

        """
        url = (self._of_base_url +
               'datapaths/{0}/groups'.format(urllib.quote(dpid)))
        data = {"group": group.to_dict()}
        r = self.restclient.post(url, json.dumps(data))
        raise_errors(r)
Beispiel #30
0
    def add_flows(self, dpid, flows):
        """Add a flow, or flows to the selected DPID

        :param str dpid: The datapath ID
        :param list, hpsdnclient.datatypes.Flow flows: The flow or flows to add

        """
        url = (self._of_base_url +
               'datapaths/{0}/flows'.format(urllib.quote(dpid)))
        data = self._assemble_flows(flows)
        r = self.restclient.post(url, json.dumps(data))
        raise_errors(r)
Beispiel #31
0
 def put(self, url, data):
     r = self._put(url, data)
     raise_errors(r)
     return r
Beispiel #32
0
 def post(self, url, data, is_file=False):
     r = self._post(url, data, is_file)
     raise_errors(r)
     return r
Beispiel #33
0
 def head(self, url):
     r = self._head(url)
     raise_errors(r)
     return r
Beispiel #34
0
 def delete(self, url, data=None):
     r = self._delete(url, data)
     raise_errors(r)
     return r