Skip to content

Commit

Permalink
Merge pull request #35 from fschulze/update
Browse files Browse the repository at this point in the history
Update testing
  • Loading branch information
mmerickel authored Feb 27, 2024
2 parents 4be7b51 + ee81719 commit 28ec2ab
Show file tree
Hide file tree
Showing 5 changed files with 86 additions and 24 deletions.
58 changes: 58 additions & 0 deletions .github/workflows/ci-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
---
name: Build and test

on:
push:
pull_request:

jobs:
test:
strategy:
matrix:
py:
- "3.7"
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
- "pypy-3.8"
os:
- "ubuntu-latest"
- "windows-latest"
- "macos-latest"
architecture:
- x64
- x86

exclude:
# Linux and macOS don't have x86 python
- os: "ubuntu-latest"
architecture: x86
- os: "macos-latest"
architecture: x86

name: "Python: ${{ matrix.py }}-${{ matrix.architecture }} on ${{ matrix.os }}"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Setup python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.py }}
architecture: ${{ matrix.architecture }}
- run: pip install tox
- name: Running tox
run: tox -e py
coverage:
runs-on: ubuntu-latest
name: Validate coverage
steps:
- uses: actions/checkout@v4
- name: Setup python 3.8
uses: actions/setup-python@v4
with:
python-version: 3.8
architecture: x64
- run: pip install tox
- run: tox -e py38-cover
File renamed without changes.
22 changes: 15 additions & 7 deletions pyramid_beaker/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -345,12 +345,20 @@ def test_region_inherit_enabled(self):
self.assertFalse(default_term.get('enabled'))

class TestIncludeMe(unittest.TestCase):
def test_includeme(self):
from pyramid.interfaces import ISessionFactory
def setUp(self):
from pyramid import testing
self.config = testing.setUp()

def _callFUT(self, config):
from pyramid_beaker import includeme
config = testing.setUp(settings={})
includeme(config)
session_factory = config.registry.queryUtility(ISessionFactory)
self.assertEqual(str(session_factory),
"<class 'pyramid_beaker.PyramidBeakerSessionObject'>")
return includeme(self.config)

def test_it(self):
from pyramid.interfaces import ISessionFactory
from pyramid_beaker import BeakerSessionFactoryConfig
self._callFUT(self.config)
session_factory = self.config.registry.queryUtility(ISessionFactory)
self.assertEqual(
str(session_factory),
str(BeakerSessionFactoryConfig())
)
10 changes: 7 additions & 3 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@

here = os.path.abspath(os.path.dirname(__file__))
try:
README = open(os.path.join(here, 'README.txt')).read()
README = open(os.path.join(here, 'README.rst')).read()
CHANGES = open(os.path.join(here, 'CHANGES.txt')).read()
except:
README = ''
Expand All @@ -46,10 +46,14 @@
"Intended Audience :: Developers",
"Programming Language :: Python",
"Programming Language :: Python :: 2",
"Programming Language :: Python :: 2.6",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.2",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
"Framework :: Pyramid",
Expand Down
20 changes: 6 additions & 14 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,28 +1,20 @@
[tox]
envlist =
py26,py27,py32,pypy,cover
envlist =
py27,py37,py38,py39,py310,py311,py312,pypy3,py38-cover

[testenv]
commands =
commands =
python setup.py test -q
deps =
pyramid
beaker

[testenv:cover]
basepython =
python2.6
commands =
[testenv:py38-cover]
commands =
python setup.py nosetests --with-xunit --with-xcoverage
deps =
pyramid
beaker
nose
coverage==3.4
coverage
nosexcover

# we separate coverage into its own testenv because a) "last run wins" wrt
# cobertura jenkins reporting and b) pypy and jython can't handle any
# combination of versions of coverage and nosexcover that i can find.
# coverage==3.4 is required by nosexcover.

0 comments on commit 28ec2ab

Please sign in to comment.