Ejemplo n.º 1
0
            raise AssertionError

        res = requests.request(method, url, timeout=self.TIMEOUT, **extra_args)
        return res.text


# For some reason, duplicity 0.7+ changed its backend api to private members
# This is to support it, they should not causa any problems for 0.6
StoqBackend._put = StoqBackend.put
StoqBackend._get = StoqBackend.get
StoqBackend._list = StoqBackend.list
StoqBackend._delete = StoqBackend.delete
StoqBackend._close = StoqBackend.close

uses_netloc.append(StoqBackend.SCHEME)
backend.register_backend(StoqBackend.SCHEME, StoqBackend)


@contextlib.contextmanager
def _mock_environ():
    old_argv = sys.argv[:]
    while sys.argv:
        sys.argv.pop()
    old_environ = os.environ.copy()

    yield

    while sys.argv:
        sys.argv.pop()
    sys.argv.extend(old_argv)
    os.environ.clear()
    def close(self):
        self._close()

    def _close(self):
        """
        Close the backend, releasing any resources held and
        invalidating any file objects obtained from the backend.
        """
        try:
            if self.sessionid:
                log.Info("Logout")

                logouturl = self.baseurl + "session/logout.json"
                logoutdata = {"session_id": self.sessionid}

                resp = self.__dopostrequest(logouturl, logoutdata)
                status = resp.getcode()
                if status != 200:
                    log.Warn("Logout failed, API Returned Status Code: %d: %s" % (status, resp.read()))

            self.sessionid = None
            self.retry = 0
            self.chunkretry = 0
            self.closeretry = 0
            self.uploadretry = 0
        except not BackendException:
            log.Warn("Logout failed")


backend.register_backend("opendrive", OpenDriveBackend)
Ejemplo n.º 3
0
        res = self._session.request(method, url, files=files, **extra_args)
        assert res.status_code == 200

        return res.text


# For some reason, duplicity 0.7+ changed its backend api to private members
# This is to support it, they should not causa any problems for 0.6
StoqBackend._put = StoqBackend.put
StoqBackend._get = StoqBackend.get
StoqBackend._list = StoqBackend.list
StoqBackend._delete = StoqBackend.delete
StoqBackend._close = StoqBackend.close

uses_netloc.append(StoqBackend.SCHEME)
backend.register_backend(StoqBackend.SCHEME, StoqBackend)


@contextlib.contextmanager
def _mock_environ():
    old_argv = sys.argv[:]
    while sys.argv:
        sys.argv.pop()
    old_environ = os.environ.copy()

    def _restore_environ():
        while sys.argv:
            sys.argv.pop()
        sys.argv.extend(old_argv)
        os.environ.clear()
        os.environ.update(old_environ)