summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOleg Pudeyev <p@users.noreply.github.com>2022-03-09 17:32:35 -0500
committerGitHub <noreply@github.com>2022-03-09 17:32:35 -0500
commitb83251320556339185aac85f47fada3e235e8a28 (patch)
tree6bd64894b7a13ce462168f6670b5259645d87750
parent3e792014dcd932e763838ed4c84aa7737d30edcd (diff)
parent393d023461d5ab53bf70e5efeb523ce727b7efaf (diff)
downloadpycurl-b83251320556339185aac85f47fada3e235e8a28.tar.gz
Merge pull request #725 from swt2c/ci_updates
CI updates
-rw-r--r--.github/workflows/ci-macos.yml43
-rw-r--r--.github/workflows/ci.yml7
-rw-r--r--tests/multi_callback_test.py3
3 files changed, 51 insertions, 2 deletions
diff --git a/.github/workflows/ci-macos.yml b/.github/workflows/ci-macos.yml
new file mode 100644
index 0000000..02a67d6
--- /dev/null
+++ b/.github/workflows/ci-macos.yml
@@ -0,0 +1,43 @@
+# 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: CI-macOS
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+
+ runs-on: macOS-11
+ env:
+ PYCURL_CURL_CONFIG: /usr/bin/curl-config
+ PYCURL_SSL_LIBRARY: sectransp
+ strategy:
+ fail-fast: false
+ matrix:
+ python-version: ["3.7", "3.8", "3.9", "3.10"]
+
+ steps:
+ - uses: actions/checkout@v2
+ - name: Select Xcode version
+ # Note: had to select a Version of Xcode that has macOS 11.x SDK
+ run: sudo xcode-select -s '/Applications/Xcode_13.0.app/Contents/Developer'
+ - name: Set up Python ${{ matrix.python-version }}
+ uses: actions/setup-python@v2
+ with:
+ python-version: ${{ matrix.python-version }}
+ - name: Install dependencies
+ run: |
+ python -m pip install --upgrade pip
+ pip install flake8 pytest
+ if [ -f requirements-dev.txt ]; then pip install -r requirements-dev.txt; fi
+ - name: Build
+ run: |
+ make
+ - name: Test with pytest
+ run: |
+ make test
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index a2ad9e4..99ec64d 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -13,13 +13,16 @@ jobs:
build:
runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ python-version: ["3.7", "3.8", "3.9", "3.10"]
steps:
- uses: actions/checkout@v2
- - name: Set up Python 3.9
+ - name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
- python-version: 3.9
+ python-version: ${{ matrix.python-version }}
- name: Install packages
run: sudo apt-get install libcurl4-gnutls-dev libgnutls28-dev
- name: Install dependencies
diff --git a/tests/multi_callback_test.py b/tests/multi_callback_test.py
index c82bc38..eb2b94f 100644
--- a/tests/multi_callback_test.py
+++ b/tests/multi_callback_test.py
@@ -4,6 +4,8 @@
from . import localhost
import pycurl
+import pytest
+import sys
import unittest
from . import appmanager
@@ -72,6 +74,7 @@ class MultiCallbackTest(unittest.TestCase):
# (mid-transfer) easy.pause(PAUSE_ALL) must call SOCKETFUNCTION to remove sockets
# (mid-transfer) easy.pause(PAUSE_CONT) must call TIMERFUNCTION to resume
+ @pytest.mark.xfail(sys.platform == 'darwin', reason='https://github.com/pycurl/pycurl/issues/729')
def test_easy_pause_unpause(self):
self.multi.add_handle(self.easy)
while self.multi.socket_action(*self.socket_action)[1]: