Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Wobble

Centralized testing package for Cracking Shells

Installation

From Source

git clone https://github.com/CrackingShells/Wobble.git
cd Wobble
pip install -e .

From PyPI

pip install cs-wobble

Quick Start

# Install wobble
pip install -e .

# Run all tests
wobble

# Run specific test categories
wobble --category regression
wobble --category integration

# Save results to file
wobble --log-file test_results.json

# CI/CD integration with file output
wobble --format json --log-file ci_results.json --log-verbosity 3

# Enhanced test discovery
wobble --discover-only                    # Show test counts by category
wobble --discover-only --discover-verbosity 2  # Show uncategorized test details
wobble --discover-only --discover-verbosity 3  # Show all tests with decorators

# Test execution with decorator display
wobble --verbose                          # Shows [@decorator_name] for each test

# Get help
wobble --help

Development

Setup Development Environment

# Clone the repository
git clone https://github.com/CrackingShells/Wobble.git
cd Wobble

# Install in development mode
pip install -e .

# Install Node.js dependencies for semantic release
npm install

Running Tests

# Run all tests with wobble
wobble

# Run tests by category
wobble --category regression

# Run with verbose output
wobble --verbose

# Alternative: use unittest directly
python -m unittest discover tests

Enhanced Discovery Features

Wobble provides enhanced test discovery with multiple verbosity levels and decorator display:

# Discovery verbosity levels
wobble --discover-only --discover-verbosity 1  # Test counts by category (default)
wobble --discover-only --discover-verbosity 2  # + Uncategorized test details
wobble --discover-only --discover-verbosity 3  # + All tests with decorator info

# Test execution with decorator display
wobble --verbose                                # Shows [@decorator_name] for tests
wobble --category regression --verbose          # Regression tests with decorators

Decorator Display Examples:

  • [@regression_test] - Regression test
  • [@integration_test] - Integration test
  • [@slow_test] - Slow-running test
  • [@regression_test, @slow_test] - Multiple decorators

Making Commits

We use Conventional Commits for automated versioning:

# Use commitizen for guided commits
npm run commit

# Or commit manually with conventional format
git commit -m "feat: add new feature"
git commit -m "fix: resolve issue with X"
git commit -m "docs: update README"

Documentation

Complete documentation is available in the docs/articles/ directory:

Contributing

We welcome contributions! Please see our Contributing Guide for details on:

  • Development workflow
  • Code style guidelines
  • Testing requirements
  • Pull request process

License

This project is licensed under the GNU Affero General Public License v3 - see the LICENSE file for details.

Links

Metadata

Release files for cs-wobble 0.2.1.dev1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cs-wobble 0.2.1.dev1
File Size Uploaded
cs_wobble-0.2.1.dev1.tar.gz 436.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cs-wobble 0.2.1.dev1
File Interpreter ABI Platform
cs_wobble-0.2.1.dev1-py3-none-any.whl Python 3 none any Details

Total release size: 924.7 kB

Release files / cs_wobble-0.2.1.dev1.tar.gz

Download URL cs_wobble-0.2.1.dev1.tar.gz
Size 436.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d9137826426b7ebde43371dafa19975fffed7e1a74bb18a07cdcb33c062da4a6
BLAKE2b-256 checksum
How to use checksums
2d0f1a5971ccc809d9eb185f83f270853e26da38fd47d0a081acdf2b1833ab8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Dec 4, 2025.

Transparency log

Release files / cs_wobble-0.2.1.dev1-py3-none-any.whl

Download URL cs_wobble-0.2.1.dev1-py3-none-any.whl
Size 487.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e9dda353f2e747c5bfb4b222f94e89fe06e2896f6de6303a9b6a8fe932e9e38b
BLAKE2b-256 checksum
How to use checksums
6e348ad870e7698a0de6459ffd3380d63ecdbff2e31bd74286e70729af03fcc4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Dec 4, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.1.dev1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page