Making simplex testing clean and simple

Overview

image

image

Making Simplex Project Testing - Clean and Simple

  • What does this repo do?

    • It organizes the python stack for the coding project
  • What do I need to do in the project?

    • The project aim is to complete 3 functions using the revised simplex method
    • These are simplex_step, simplex_init, and simplex_method
    • The details of what these functions do and what are the inputs and outputs are available in project.pdf file provided.
    • The instructors will run the functions for different test cases (1-11)
  • Okay, then how is this repository related to project?

    • Find project.py file. This is the only file where you make changes.
    • You'll find those 3 functions in this file, just add the appropriate code in there
    • Once done, you can test your implementation using run_test.py and verify if your implementation is correct.
    • Every test file provided by the instructor tests different aspects of the simplex implementation, so to make things simple, the run_test.py by itself will find the appropriate test case - run your function and then let you know the result (success/fail)
    • There's more, groot also checks if your function return types are valid, so that you know that you have the right construction
    • Beyond that, groot is very flexible in terms of testing, you can test by test_number, function or all cases in one go.
  • "Uhhh.. that seems to complicated, tell me bottom line?"

    • Just go to project.py file and write your code.

    • Say, you've finished simplex_step and want to see if this is correct.

      • On your console run - python3 run_test.py --function=simplex_step
    • OR say you just want to run test3 for debugging sake

      • On your console run - python3 run_test.py --test=3
      • OR may be you're done with all 3 functions and run all the test cases
        • On your console run - python3 run_test.py --all
    • Nice! What do I get after running this?

      • Groot tells you if your output were correct/incorrect and if latter then what part of the output is incorrect. Like this:
      > TEST - 2 was successful! >> TEST - 3 was successful! >> TEST - 4 was successful! ************************************ TEST-5 ************************************ INCORRECT istatus! ">
      $python run_test.py --function="simplex_step"
      
      ************************************
      TEST-1
      ************************************
      INCORRECT STEP!
      iN incorrect!
      iB incorrect!
      
      >> TEST - 2 was successful! 
      >> TEST - 3 was successful!
      >> TEST - 4 was successful!
      ************************************
      TEST-5
      ************************************
      INCORRECT istatus!
      
    • Do I need to do anything with the test_scripts - No

    • Do I need to make any changes in run_test.py - No, you only modify project.py

    • How do I find all the execution options - python3 run_tests.py --help

Known Issues -

  1. Jupyter-notebook support
  2. Debug mode and pretty printing - under way
Owner
Mohit Mahajan
Algorithms, Data Science, Mathematical Optimization and Supply Chain Engineering
Mohit Mahajan
Redlines produces a Markdown text showing the differences between two strings/text

Redlines Redlines produces a Markdown text showing the differences between two strings/text. The changes are represented with strike-throughs and unde

Houfu Ang 2 Apr 08, 2022
Auto translate Localizable.strings for multiple languages in Xcode

auto_localize Auto translate Localizable.strings for multiple languages in Xcode Usage put your origin Localizable.strings file in folder pip3 install

Wesley Zhang 13 Nov 22, 2022
A collection of pre-commit hooks for handling text files.

texthooks A collection of pre-commit hooks for handling text files. In particular, hooks for handling unicode characters which may be undesirable in a

Stephen Rosen 5 Oct 28, 2022
pydantic-i18n is an extension to support an i18n for the pydantic error messages.

pydantic-i18n is an extension to support an i18n for the pydantic error messages

Boardpack 48 Dec 21, 2022
Compute distance between sequences. 30+ algorithms, pure python implementation, common interface, optional external libs usage.

TextDistance TextDistance -- python library for comparing distance between two or more sequences by many algorithms. Features: 30+ algorithms Pure pyt

Life4 3k Jan 02, 2023
Wikipedia Reader for the GNOME Desktop

Wike Wike is a Wikipedia reader for the GNOME Desktop. Provides access to all the content of this online encyclopedia in a native application, with a

Hugo Olabera 126 Dec 24, 2022
Little python script + dictionary to help solve Wordle puzzles

Wordle Solver Little python script + dictionary to help solve Wordle puzzles Usage Usage: ./wordlesolver.py [letters in word] [letters not in word] [p

Luke Stephens (hakluke) 4 Jul 24, 2022
Tools to extract questionaire of finalexam.eu and provide interactive questionaire with summary

AskMe This script is completely terminal based. No user interface is added. You can get the command line options by using the --help argument. Make su

David Loewe 1 Nov 09, 2021
An implementation of figlet written in Python

All of the documentation and the majority of the work done was by Christopher Jones ([emai

Peter Waller 1.1k Jan 02, 2023
An anthology of a variety of tools for the Persian language in Python

An anthology of a variety of tools for the Persian language in Python

Persian Tools 106 Nov 08, 2022
PyNews 📰 Simple newsletter made with python 🐍🗞️

PyNews 📰 Simple newsletter made with python Install dependencies This project has some dependencies (see requirements.txt) that are not included in t

Luciano Felix 4 Aug 21, 2022
Split large XML files into smaller ones for easy upload

Split large XML files into smaller ones for easy upload. Works for WordPress Posts Import and other XML files.

Joseph Adediji 1 Jan 30, 2022
An online markdown resume template project, based on pywebio

An online markdown resume template project, based on pywebio

极简XksA 5 Nov 10, 2022
AnnIE - Annotation Platform, tool for open information extraction annotations using text files.

AnnIE - Annotation Platform, tool for open information extraction annotations using text files.

Niklas 29 Dec 20, 2022
This is REST-API for Indonesian Text Summarization using Non-Negative Matrix Factorization for the algorithm to summarize documents and FastAPI for the framework.

Indonesian Text Summarization Using FastAPI This is REST-API for Indonesian Text Summarization using Non-Negative Matrix Factorization for the algorit

Viqi Nurhaqiqi 2 Nov 03, 2022
Production First and Production Ready End-to-End Keyword Spotting Toolkit

WeKws Production First and Production Ready End-to-End Keyword Spotting Toolkit. The goal of this toolkit it to... Small footprint keyword spotting (K

222 Dec 30, 2022
This project aims to test check if your RegExp are being matched by grep.

Bash RegExp This project aims to test check if your RegExp are being matched by grep. It's a local server that starts on the port 8080. It runs the se

Quatrecentquatre 1 Feb 28, 2022
text-to-speach bot - You really do NOT have time for read a newsletter? Now you can listen to it

NewsletterReader You really do NOT have time for read a newsletter? Now you can listen to it The Newsletter of Filipe Deschamps is a great place to re

ItanuRomero 8 Sep 18, 2021
Build a translation program similar to Google Translate with Python programming language and QT library

google-translate Build a translation program similar to Google Translate with Python programming language and QT library Different parts of the progra

Amir Hussein Sharifnezhad 3 Oct 09, 2021