Skip to main content

CS2103T PE Toolkit: Practical Exam Helper CLI

Project description

PE Toolkit

A command-line tool for generating edge case test inputs, checking typos in PDF, and validating PDF links for CS2103/T practical exams.

Getting Started

Prerequisites

To use this tool, you will need Python 3.9 or higher. You can verify your Python installation via:

python3 --version

Installation

  1. To use the PE Toolkit, install the package using pip:

    pip install pe-toolkit
    
  2. Verify the installation by checking the version:

    pe-toolkit --help
    

Quick Start

Generate Edge Case Inputs

  1. Create a JSON specification file:

    [
      {
        "variable": "email",
        "prefix": "e/",
        "type": "string",
        "min_length": 5,
        "max_length": 100
      },
      {
        "variable": "score",
        "prefix": "s/",
        "type": "double",
        "min": 0.0,
        "max": 100.0
      },
      {
        "variable": "birthdate",
        "prefix": "d/",
        "type": "date",
        "format": "%Y-%m-%d"
      }
    ]
    

    Below is the list of supported field types and their parameters.

    Type Configuration
    String "type": "string", "min_length": X, "max_length": Y
    Integer "type": "integer", "min": X, "max": Y
    Long "type": "long", "min": X, "max": Y
    Double "type": "double", "min": X, "max": Y
    Date "type": "date", "format": "%Y-%m-%d"
    Time "type": "time", "format": "%H:%M"

    Note that the minimum and maximum values are optional. If omitted, default values will be used.

  2. Generate test cases:

    pe-toolkit generate spec.json
    

Check PDF Typos

To check for typos in a PDF document, run:

pe-toolkit check-typos document.pdf

Check PDF Links

To validate all hyperlinks in a PDF document, run:

pe-toolkit check-links document.pdf

License

This project is licensed under the MIT License. See the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pe_toolkit-1.1.2.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pe_toolkit-1.1.2-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file pe_toolkit-1.1.2.tar.gz.

File metadata

  • Download URL: pe_toolkit-1.1.2.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pe_toolkit-1.1.2.tar.gz
Algorithm Hash digest
SHA256 811d10d55bccd979363d9c91768eabaf662f4b4771bc5fe50b5674a6ac98990a
MD5 9819f486e76623f7b36f02aa84000d01
BLAKE2b-256 053d752440960dd7a1909f4ca5dfda0441cf7650726df28bb7e08aad01a98c27

See more details on using hashes here.

Provenance

The following attestation bundles were made for pe_toolkit-1.1.2.tar.gz:

Publisher: publish.yml on oadultradeepfield/cs2103-pe-toolkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pe_toolkit-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: pe_toolkit-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pe_toolkit-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f8358bc7f2790fac3bae55595f589f61fc259e09ac2f4fd8d9d71af25976e085
MD5 0cc0c1cf6e3b52bcee6580d0e424f6e0
BLAKE2b-256 c43bbfa6b40a65da97b8fb134571c3ec1a5838c976f7d864a79a7c8f743838bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pe_toolkit-1.1.2-py3-none-any.whl:

Publisher: publish.yml on oadultradeepfield/cs2103-pe-toolkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page