mirror of
https://github.com/evennia/evennia.git
synced 2026-03-16 12:56:30 +01:00
add: coverage to toml; workflow timeout
This commit is contained in:
parent
702d0e5703
commit
20e7a7fed8
2 changed files with 118 additions and 86 deletions
22
.github/workflows/github_action_test_suite.yml
vendored
22
.github/workflows/github_action_test_suite.yml
vendored
|
|
@ -26,6 +26,12 @@ jobs:
|
|||
TESTING_DB: "sqlite3"
|
||||
coverage-test: true
|
||||
|
||||
timeout-minutes: 35
|
||||
|
||||
env:
|
||||
UNIT_TEST_SETTINGS: "--settings=settings --keepdb --parallel 4 --timing"
|
||||
COVERAGE_TEST_SETTINGS: "--settings=settings --timing"
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
|
|
@ -67,12 +73,7 @@ jobs:
|
|||
if: ${{ ! matrix.coverage-test }}
|
||||
working-directory: testing_mygame
|
||||
run: |
|
||||
evennia test \
|
||||
--settings=settings \
|
||||
--keepdb \
|
||||
--parallel 4 \
|
||||
--timing \
|
||||
evennia
|
||||
evennia test ${{ env.UNIT_TEST_SETTINGS }} evennia
|
||||
|
||||
# OBS - it's important to not run the coverage tests with --parallel, it messes up the coverage
|
||||
# calculation!
|
||||
|
|
@ -80,13 +81,8 @@ jobs:
|
|||
if: ${{ matrix.coverage-test }}
|
||||
working-directory: testing_mygame
|
||||
run: |
|
||||
coverage run \
|
||||
--source=evennia \
|
||||
--omit=*/migrations/*,*/urls.py,*/test*.py,*.sh,*.txt,*.md,*.pyc,*.service \
|
||||
../bin/unix/evennia test \
|
||||
--settings=settings \
|
||||
--timing \
|
||||
evennia
|
||||
coverage run --rcfile=../pyproject.toml ../bin/unix/evennia test ${{ env.COVERAGE_TEST_SETTINGS }} evennia
|
||||
coverage combine
|
||||
coverage xml
|
||||
coverage --version
|
||||
coverage report | grep TOTAL
|
||||
|
|
|
|||
182
pyproject.toml
182
pyproject.toml
|
|
@ -5,97 +5,116 @@ build-backend = "setuptools.build_meta"
|
|||
[project]
|
||||
name = "evennia"
|
||||
version = "1.0"
|
||||
maintainers = [
|
||||
{ name="Griatch", email="griatch@gmail.com" },
|
||||
]
|
||||
maintainers = [{ name = "Griatch", email = "griatch@gmail.com" }]
|
||||
description = "A full-featured toolkit and server for text-based multiplayer games (MUDs, MU*, etc)."
|
||||
requires-python = ">=3.10"
|
||||
readme = { file="README.md", content-type="text/markdown" }
|
||||
license = { text="BSD" }
|
||||
readme = { file = "README.md", content-type = "text/markdown" }
|
||||
license = { text = "BSD" }
|
||||
keywords = [
|
||||
"MUD", "MUSH", "MUX", "MMO", "text-only", "multiplayer", "online", "rpg", "game", "engine",
|
||||
"framework", "text", "adventure", "telnet", "websocket", "blind", "accessible", "ascii",
|
||||
"utf-8", "terminal", "online", "server", "beginner", "tutorials"
|
||||
"MUD",
|
||||
"MUSH",
|
||||
"MUX",
|
||||
"MMO",
|
||||
"text-only",
|
||||
"multiplayer",
|
||||
"online",
|
||||
"rpg",
|
||||
"game",
|
||||
"engine",
|
||||
"framework",
|
||||
"text",
|
||||
"adventure",
|
||||
"telnet",
|
||||
"websocket",
|
||||
"blind",
|
||||
"accessible",
|
||||
"ascii",
|
||||
"utf-8",
|
||||
"terminal",
|
||||
"online",
|
||||
"server",
|
||||
"beginner",
|
||||
"tutorials",
|
||||
]
|
||||
classifiers = [
|
||||
"Programming Language :: Python :: 3 :: Only",
|
||||
"Programming Language :: Python :: 3.10",
|
||||
"Programming Language :: Python :: 3.11",
|
||||
"Programming Language :: JavaScript",
|
||||
"Development Status :: 5 - Production/Stable",
|
||||
"License :: OSI Approved :: BSD License",
|
||||
"Environment :: Console",
|
||||
"Environment :: Web Environment",
|
||||
"Framework :: Django",
|
||||
"Framework :: Twisted",
|
||||
"Intended Audience :: Developers",
|
||||
"Intended Audience :: Education",
|
||||
"Operating System :: MacOS",
|
||||
"Operating System :: Microsoft :: Windows",
|
||||
"Operating System :: POSIX :: Linux",
|
||||
"Topic :: Database",
|
||||
"Topic :: Education",
|
||||
"Topic :: Games/Entertainment :: Multi-User Dungeons (MUD)",
|
||||
"Topic :: Games/Entertainment :: Puzzle Games",
|
||||
"Topic :: Games/Entertainment :: Role-Playing",
|
||||
"Topic :: Games/Entertainment :: Simulation",
|
||||
"Topic :: Software Development :: Libraries :: Application Frameworks",
|
||||
"Topic :: Internet :: WWW/HTTP :: WSGI :: Server"
|
||||
"Programming Language :: Python :: 3 :: Only",
|
||||
"Programming Language :: Python :: 3.10",
|
||||
"Programming Language :: Python :: 3.11",
|
||||
"Programming Language :: JavaScript",
|
||||
"Development Status :: 5 - Production/Stable",
|
||||
"License :: OSI Approved :: BSD License",
|
||||
"Environment :: Console",
|
||||
"Environment :: Web Environment",
|
||||
"Framework :: Django",
|
||||
"Framework :: Twisted",
|
||||
"Intended Audience :: Developers",
|
||||
"Intended Audience :: Education",
|
||||
"Operating System :: MacOS",
|
||||
"Operating System :: Microsoft :: Windows",
|
||||
"Operating System :: POSIX :: Linux",
|
||||
"Topic :: Database",
|
||||
"Topic :: Education",
|
||||
"Topic :: Games/Entertainment :: Multi-User Dungeons (MUD)",
|
||||
"Topic :: Games/Entertainment :: Puzzle Games",
|
||||
"Topic :: Games/Entertainment :: Role-Playing",
|
||||
"Topic :: Games/Entertainment :: Simulation",
|
||||
"Topic :: Software Development :: Libraries :: Application Frameworks",
|
||||
"Topic :: Internet :: WWW/HTTP :: WSGI :: Server",
|
||||
]
|
||||
dependencies = [
|
||||
# core dependencies
|
||||
"django >= 4.1.3, < 4.2",
|
||||
"twisted >= 22.10, < 23",
|
||||
"pytz >= 2022.6",
|
||||
"djangorestframework >= 3.14, < 3.15",
|
||||
"pyyaml >= 6.0",
|
||||
"django-filter == 2.4",
|
||||
"django-sekizai == 2.0.0",
|
||||
"inflect >= 5.2.0",
|
||||
"autobahn >= 20.7.1, < 21.0.0",
|
||||
"lunr == 0.6.0",
|
||||
"simpleeval <= 1.0",
|
||||
"uritemplate == 4.1.1",
|
||||
"Jinja2 < 3.1",
|
||||
"tzdata >= 2022.6",
|
||||
# for unit tests and code formatting
|
||||
"mock >= 4.0.3",
|
||||
"model_mommy >= 2.0",
|
||||
"anything ==0.2.1",
|
||||
"black >= 22.6",
|
||||
"isort >= 5.10",
|
||||
"parameterized ==0.8.1",
|
||||
# core dependencies
|
||||
"django >= 4.1.3, < 4.2",
|
||||
"twisted >= 22.10, < 23",
|
||||
"pytz >= 2022.6",
|
||||
"djangorestframework >= 3.14, < 3.15",
|
||||
"pyyaml >= 6.0",
|
||||
"django-filter == 2.4",
|
||||
"django-sekizai == 2.0.0",
|
||||
"inflect >= 5.2.0",
|
||||
"autobahn >= 20.7.1, < 21.0.0",
|
||||
"lunr == 0.6.0",
|
||||
"simpleeval <= 1.0",
|
||||
"uritemplate == 4.1.1",
|
||||
"Jinja2 < 3.1",
|
||||
"tzdata >= 2022.6",
|
||||
# for unit tests and code formatting
|
||||
"mock >= 4.0.3",
|
||||
"model_mommy >= 2.0",
|
||||
"anything ==0.2.1",
|
||||
"black >= 22.6",
|
||||
"isort >= 5.10",
|
||||
"parameterized ==0.8.1",
|
||||
]
|
||||
|
||||
[project.optional-dependencies]
|
||||
|
||||
extra = [
|
||||
# contrib optional dependencies
|
||||
# install with 'pip install evennia[extra]`
|
||||
# contrib optional dependencies
|
||||
# install with 'pip install evennia[extra]`
|
||||
|
||||
# crypto libraries for ssh support
|
||||
"cryptography >= 2.8",
|
||||
"pyasn1 >= 0.4.8",
|
||||
"bcrypt >= 3.1.7",
|
||||
# crypto libraries for ssh support
|
||||
"cryptography >= 2.8",
|
||||
"pyasn1 >= 0.4.8",
|
||||
"bcrypt >= 3.1.7",
|
||||
|
||||
# Telnet-SSL support
|
||||
"pyopenssl >= 19.1",
|
||||
"service_identity >= 18.1.0",
|
||||
# Telnet-SSL support
|
||||
"pyopenssl >= 19.1",
|
||||
"service_identity >= 18.1.0",
|
||||
|
||||
# AWS storage contrib
|
||||
"boto3 >= 1.4.4",
|
||||
"botocore >= 1.15",
|
||||
# AWS storage contrib
|
||||
"boto3 >= 1.4.4",
|
||||
"botocore >= 1.15",
|
||||
|
||||
# Jupyter Notebook support
|
||||
"jupyter >= 1.0.0",
|
||||
"ipython >= 7.19.0",
|
||||
"django-extensions >= 3.1.0",
|
||||
# Jupyter Notebook support
|
||||
"jupyter >= 1.0.0",
|
||||
"ipython >= 7.19.0",
|
||||
"django-extensions >= 3.1.0",
|
||||
|
||||
# xyzroom contrib
|
||||
"scipy == 1.9.3",
|
||||
# xyzroom contrib
|
||||
"scipy == 1.9.3",
|
||||
|
||||
# Git contrib
|
||||
"gitpython >= 3.1.27"
|
||||
# Git contrib
|
||||
"gitpython >= 3.1.27",
|
||||
]
|
||||
|
||||
[project.urls]
|
||||
|
|
@ -133,3 +152,20 @@ exclude = '''
|
|||
|
||||
)
|
||||
'''
|
||||
|
||||
[tool.coverage]
|
||||
|
||||
[tool.coverage.run]
|
||||
concurrency = ["multiprocessing"]
|
||||
parallel = true
|
||||
source = ["evennia"]
|
||||
omit = [
|
||||
"*/migrations/*",
|
||||
"*/urls.py",
|
||||
"*/test*.py",
|
||||
"*.sh",
|
||||
"*.txt",
|
||||
"*.md",
|
||||
"*.pyc",
|
||||
"*.service",
|
||||
]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue