Skip to main content

A TUI for creating testcases for the ISP/OOP1 courses at TU Graz

Project description

tc-tui

A TUI (Text-based User Interface) for creating testcases for C programs. The testcases are in the format used with this testrunner https://gitlab.tugraz.at/testrunner/testrunner

Features

  • Create testcases for C programs by interactively running the program and capturing input/output
  • Edit testcases for C programs
  • Regenerate testcases with the previous inputs
  • Reorder testcases and set public/private status
  • Generate coverage reports

Installation

Option 1: Install from PyPI

pip install tc-tui

Option 2: Install from source

git clone https://gitlab.tugraz.at/B3D2209CD12BEAA2/tc-tui.git
cd tc-tui
pip install -e .

Dependencies

TestcaseHelper requires the following external dependencies:

  • gcc: C compiler
  • make: Build tool
  • gcov: Coverage analysis tool (usually comes with gcc)
  • lcov: Coverage report generator
  • genhtml: HTML report generator (part of lcov package)

Installing dependencies

Ubuntu/Debian

sudo apt-get install gcc make lcov

Fedora/RHEL

sudo dnf install gcc make lcov

macOS

brew install gcc make lcov

Usage

Open a terminal in the assigment directory (which contains the source files, the Makefile and the testrunner binary) and run:

tc-tui

This will open the TUI in your terminal.

Configuration

tc-tui uses an optionalconfig.ini file for configuration. The default configuration is:

[files]
source_files = *.c
all_tests_file = test_all.toml
public_tests_file = test.toml

[coverage]
cov_executable = a_cov.out
output_dir = coverage_report/

You can create/modify this file to change the default settings.

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

tc_tui-0.1.0.tar.gz (13.6 kB view details)

Uploaded Source

Built Distribution

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

tc_tui-0.1.0-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

Details for the file tc_tui-0.1.0.tar.gz.

File metadata

  • Download URL: tc_tui-0.1.0.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for tc_tui-0.1.0.tar.gz
Algorithm Hash digest
SHA256 dce8c157872aa3466962f874535b52a30d30fade57475956a7b80edb3165b1d9
MD5 a543cc12eb43ca5e4d588f8c920d7a30
BLAKE2b-256 a3e53f6fb71d8191fcd2b0b47847049c28a33d8e7170d5dac97a85816da47680

See more details on using hashes here.

File details

Details for the file tc_tui-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: tc_tui-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 16.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for tc_tui-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4de1a77e27c6db5d90af307ac06fd921b1d7f07dd6b0c1fd7b0032665bbf09dc
MD5 f3afde0837a312ffac8ceae003df28a6
BLAKE2b-256 ee2f56ead2e3e820990696045d554705c0d3047cdd6ac8cb3fa73e89d4ded572

See more details on using hashes here.

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