diff --git a/.github/workflows/python-app.yml b/.github/workflows/python-app.yml new file mode 100644 index 0000000..8e511b3 --- /dev/null +++ b/.github/workflows/python-app.yml @@ -0,0 +1,40 @@ +# This workflow will install Python dependencies, run tests and lint with a single version of Python +# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions + +name: Python application + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +permissions: + contents: read + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Set up Python 3.10 + uses: actions/setup-python@v3 + with: + python-version: "3.10" + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install flake8 pytest + pip install -r requirements.txt + pip install -e . + - name: Lint with flake8 + run: | + # stop the build if there are Python syntax errors or undefined names + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + - name: Test with pytest + run: | + pytest diff --git a/.gitignore b/.gitignore index f41ad96..2453233 100644 --- a/.gitignore +++ b/.gitignore @@ -130,3 +130,8 @@ dmypy.json # Project specific configurable_http_proxy/version.txt +/.idea/configurable-http-proxy.iml +/.idea/inspectionProfiles/profiles_settings.xml +/.idea/misc.xml +/.idea/modules.xml +/.idea/vcs.xml diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/configurable_http_proxy_test/test_proxy.py b/configurable_http_proxy_test/test_proxy.py index f0985ac..b78f7ce 100644 --- a/configurable_http_proxy_test/test_proxy.py +++ b/configurable_http_proxy_test/test_proxy.py @@ -32,7 +32,7 @@ async def get(self, path=None): } self.set_status(200) self.set_header("Content-Type", "application/json") - if self.get_argument("with_set_cookie"): + if self.get_argument("with_set_cookie", None): # Values that set-cookie can take: # https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie values = {