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
Binary file added .coverage.6fbd7e9774fe.370.XJBqJNAx
Binary file not shown.
64 changes: 64 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,69 @@
# Python
__pyc*
*/__pyc*
*.py[cod]
*$py.class
*.so
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# Virtual environments
venv/
ENV/
env/
.venv

# Testing
.pytest_cache/
.coverage
htmlcov/
coverage.xml
*.cover
.hypothesis/
.tox/
.nox/

# IDEs
.vscode/
.idea/
*.swp
*.swo
*~
.project
.pydevproject
.settings/

# Claude
.claude/*

# Project specific
readme2*
results
temp

# OS
.DS_Store
Thumbs.db

# Jupyter
.ipynb_checkpoints/

# mypy
.mypy_cache/
.dmypy.json
dmypy.json
23 changes: 23 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# CLAUDE.md

## Project Overview
Video generation and editing system with audio capabilities. Testing infrastructure has been set up using Poetry and pytest.

## Commands
- Test: `poetry run test` or `poetry run tests`
- Test without coverage: `poetry run pytest --no-cov`
- Test specific markers: `poetry run pytest -m unit` or `poetry run pytest -m integration`
- Lint: TBD
- Type Check: TBD

## Testing Infrastructure
- Package Manager: Poetry
- Test Framework: pytest with coverage and mocking support
- Test Directory: `/tests` with unit and integration subdirectories
- Coverage Threshold: 80% (configurable in pyproject.toml)
- Test Markers: `unit`, `integration`, `slow`

## Notes
- Python 3.9+ required (due to accelerate dependency)
- Run `poetry install` to install all dependencies
- Coverage reports generated in `htmlcov/` directory and `coverage.xml`
5,381 changes: 5,381 additions & 0 deletions poetry.lock

Large diffs are not rendered by default.

109 changes: 109 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
[tool.poetry]
name = "hymm-video-generation"
version = "0.1.0"
description = "A video generation and editing system with audio capabilities"
authors = ["Your Name <[email protected]>"]
readme = "README.md"
packages = [
{ include = "hymm_sp" },
{ include = "hymm_gradio" }
]

[tool.poetry.dependencies]
python = "^3.9"
opencv-python = "4.9.0.80"
diffusers = "0.33.0"
transformers = "4.41.2"
accelerate = "1.1.1"
pandas = "2.0.3"
numpy = "^1.26.0"
einops = "0.7.0"
tqdm = "4.66.2"
loguru = "0.7.2"
imageio = "2.34.0"
imageio-ffmpeg = "0.5.1"
safetensors = "0.4.3"
gradio = "3.39.0"
librosa = "0.11.0"
fastapi = "*"
uvicorn = "*"
onnxruntime = "*"

[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", "tests.py"]
python_classes = ["Test*", "*Tests"]
python_functions = ["test_*"]
addopts = [
"-ra",
"--strict-markers",
"--strict-config",
"--cov=hymm_sp",
"--cov=hymm_gradio",
"--cov-branch",
"--cov-report=term-missing:skip-covered",
"--cov-report=html:htmlcov",
"--cov-report=xml:coverage.xml",
"--cov-fail-under=0",
"--tb=short",
"--maxfail=1",
"-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 = ["hymm_sp", "hymm_gradio"]
branch = true
parallel = true
omit = [
"*/tests/*",
"*/test_*",
"*/__init__.py",
"*/setup.py",
"*/conftest.py",
]

[tool.coverage.report]
exclude_lines = [
"pragma: no cover",
"def __repr__",
"def __str__",
"raise AssertionError",
"raise NotImplementedError",
"if __name__ == .__main__.:",
"if TYPE_CHECKING:",
"if typing.TYPE_CHECKING:",
"@(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