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
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
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
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
A simple Python module for parsing human names into their individual components

Name Parser A simple Python (3.2+ & 2.6+) module for parsing human names into their individual components. hn.title hn.first hn.middle hn.last hn.suff

Derek Gulbranson 574 Dec 20, 2022
Simple python program to auto credit your code, text, book, whatever!

Credit Simple python program to auto credit your code, text, book, whatever! Setup First change credit_text to whatever text you would like to credit

Hashm 1 Jan 29, 2022
🍋 A Python package to process food

Pyfood is a simple Python package to process food, in different languages. Pyfood's ambition is to be the go-to library to deal with food, recipes, on

Local Seasonal 8 Apr 04, 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
Shows twitch pay for any streamer from Twitch leaked CSV files.

twitch_leak_csv_reader Shows twitch pay for any streamer from Twitch leaked CSV files. Requirements: You need python3 (you can install python 3 from o

5 Nov 11, 2022
Python character encoding detector

Chardet: The Universal Character Encoding Detector Detects ASCII, UTF-8, UTF-16 (2 variants), UTF-32 (4 variants) Big5, GB2312, EUC-TW, HZ-GB-2312, IS

Character Encoding Detector 1.8k Jan 08, 2023
Implementation of hashids (http://hashids.org) in Python. Compatible with Python 2 and Python 3

hashids for Python 2.7 & 3 A python port of the JavaScript hashids implementation. It generates YouTube-like hashes from one or many numbers. Use hash

David Aurelio 1.4k Jan 02, 2023
This is an AI that is supposed to say you if your text is formal or not

This is an AI that is supposed to say you if your text is formal or not. It's written in Python 3 and has some german examples (because I'm german yk) in the text.json file. This file contains the te

1 Jan 12, 2022
"Complexity" of Flags of the countries of the world

"Complexity" of Flags of the countries of the world Flags (png) from: https://flagcdn.com/w2560.zip https://flagpedia.net/download/images run: chmod +

Alexander Lelchuk 1 Feb 10, 2022
Correcting typos in a word based on the frequency dictionary

Auto-correct text Correcting typos in a word based on the frequency dictionary. This algorithm is based on the distance between words according to the

Anton Yakovlev 2 Feb 05, 2022
Hamming code generation, error detection & correction.

Hamming code generation, error detection & correction.

Farhan Bin Amin 2 Jun 30, 2022
A Python3 script that simulates the user typing a text on their keyboard.

A Python3 script that simulates the user typing a text on their keyboard. (control the speed, randomness, rate of typos and more!)

Jose Gracia Berenguer 3 Feb 22, 2022
汉字转拼音(pypinyin)

汉字拼音转换工具(Python 版) 将汉字转为拼音。可以用于汉字注音、排序、检索(Russian translation) 。 基于 hotoo/pinyin 开发。 Documentation: http://pypinyin.rtfd.io/ GitHub: https://github.co

Huang Huang 4.2k Jan 03, 2023
Getting git-style versioning working on RDFlib

Getting git-style versioning working on RDFlib

Gabe Fierro 1 Feb 01, 2022
split Word file by chapter

split Word file by chapter we use the mircosoft word api to code this tool api url:https://docs.microsoft.com/zh-cn/dotnet/api/ if this tool is good f

wisdom under lemon trees 5 Nov 06, 2021
Word-Generator - Generates meaningful words from dictionary with given no. of letters and words.

Meaningful Word Generator Generates meaningful words from dictionary with given no. of letters and words. This might be useful for generating short li

Mohammed Rabil 1 Jan 01, 2022
LazyText is inspired b the idea of lazypredict, a library which helps build a lot of basic models without much code.

LazyText is inspired b the idea of lazypredict, a library which helps build a lot of basic models without much code. LazyText is for text what lazypredict is for numeric data.

Jay Vala 13 Nov 04, 2022