Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 42 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,45 @@
/env/
*.pyc
*.pyo

# Testing
.pytest_cache/
.coverage
htmlcov/
coverage.xml
*.cover
*.py,cover
.hypothesis/
.coverage.*

# Claude
.claude/*

# Virtual environments
venv/
.venv/
ENV/
.env/
env.bak/
venv.bak/

# Build artifacts
build/
dist/
*.egg-info/
*.egg
__pycache__/

# IDE files
.vscode/
*.swp
*.swo
*~
.project
.pydevproject

# OS files
.DS_Store
Thumbs.db
.Spotlight-V100
.Trashes
282 changes: 282 additions & 0 deletions poetry.lock

Large diffs are not rendered by default.

85 changes: 85 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
[tool.poetry]
name = "plugin-googledrive"
version = "1.5.0"
description = "Google Drive plugin for Kodi"
authors = ["Carlos Guzman (cguZZman)"]
license = "GPL-3.0-or-later"
readme = "README.md"
repository = "https://github.com/cguZZman/plugin.googledrive"
packages = [{include = "resources"}]

[tool.poetry.dependencies]
python = "^3.8"

[tool.poetry.group.dev.dependencies]
pytest = "^8.0.0"
pytest-cov = "^5.0.0"
pytest-mock = "^3.14.0"

[tool.poetry.scripts]
test = "pytest:main"
tests = "pytest:main"

[tool.pytest.ini_options]
minversion = "8.0"
testpaths = ["tests"]
python_files = ["test_*.py", "*_test.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]
addopts = [
"-ra",
"--strict-markers",
"--cov=resources",
"--cov-report=term-missing",
"--cov-report=html",
"--cov-report=xml",
"--cov-fail-under=0",
"-v"
]
markers = [
"unit: Mark test as a unit test",
"integration: Mark test as an integration test",
"slow: Mark test as slow running"
]
filterwarnings = [
"error",
"ignore::UserWarning",
"ignore::DeprecationWarning"
]

[tool.coverage.run]
source = ["resources"]
omit = [
"*/tests/*",
"*/__pycache__/*",
"*/venv/*",
"*/.venv/*",
"*/env/*",
"*/.env/*"
]

[tool.coverage.report]
exclude_lines = [
"pragma: no cover",
"def __repr__",
"def __str__",
"raise AssertionError",
"raise NotImplementedError",
"if __name__ == .__main__.:",
"if TYPE_CHECKING:",
"class .*\\bProtocol\\):",
"@(abc\\.)?abstractmethod"
]
precision = 2
show_missing = true
skip_covered = false

[tool.coverage.html]
directory = "htmlcov"

[tool.coverage.xml]
output = "coverage.xml"

[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"
Empty file added tests/__init__.py
Empty file.
Loading