Skip to main content

python tests for Hadassah Academic Collage intro2cs courses

Project description

Inferno Tests

Github licence

Github release Github tag PyPI version

Code style: black

This project is an automation for teats for the Hadassah Academic College courses
Intro2cs and Intro2cs2.

The tests will:

  1. Check the differences between your output and the school solution output.
  2. Check the differences between your errors (cerr) and the school solution errors.
  3. Check for leak memory using valgrind.

How to Install

Virtual Machine

Because the virtual machine has internet connection you may only use the following terminal command:

python -m pip install --user hac-intro2cs-tests

NoMachine

The NoMachine has no internet connection so you must download the package file from PyPI page (the .whl file is recommended).
Now add the file to the NoMachine and run the following command:

python -m pip install --user <file_name>

Replace the <file_name> with the name of the file you downloaded

How to Use

  1. Open the linux (NoMachine or Virtual Machine) and make directory with the following files:

    • School solution files, must be with the extension "sol",
    • Your executable file, must be the same name as the school solution files names without the "sol".
    • Tests files, must contain "_test" in their name. if there are more then 1 sol file, the file must start with the executable file name following by "_test"

    For example, directory with the following files:

    • ex1asol
    • ex1a
    • ex1a.cc (optional)
    • ex1a_test00.in
    • ex1a_test01.in
    • ex1a_test02.in
    • ex1asol
    • ex1b
    • ex1b.cc (optional)
    • ex1b_test00.in
    • ex1b_test01.in
    • ex1b_test02.in
  2. Open the terminal at the directory and write the following command:

    python -m test_ex
    

    For each test the program will print the name of the test and the problem with the test (if there is outputs diff, if there is errors (cerr) diff, if there is a memory leak).

Alias

You can add alias to the command by writing the next line to the file ~/.tcshrc:

alias test_ex python -m test_ex

You may run the following command to do so:

echo "alias test_ex python -m test_ex" >> ~/.tcshrc

Now you can run the command:

test_ex

Instead of:

python -m test_ex

A Little Bit More

Timeout

The tests automatically run with timeout of 5 seconds to your program.
To change the timeout you may use the -t or --timeout flag:
To run the program with X seconds timeout, run the following command

test_ex --timeout X

To run with no timeout (Strongly recommended not to), set the timeout flag to 0:

test_ex --timeout 0

Specific Test

If you want to test specific test you may use the -s or --specific in the following way

test all tests for ex1a:

test_ex --specific ex1a

test specific tests for ex1a (ex1a_test01.in):

test_ex --specific ex1a_test01.in

More

For more information run:

test_ex --help

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

hac-intro2cs-tests-1.3.1.tar.gz (5.1 kB view hashes)

Uploaded Source

Built Distribution

hac_intro2cs_tests-1.3.1-py3-none-any.whl (8.3 kB view hashes)

Uploaded Python 3

Supported by

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