Merge branch 'master' into Walker-TestBranch
YOU get a comment!.... and YOU get a comment!

Basically, there are comments everywhere now.
- Class headers have all been updated with all functions, and Purpose
has been expanded upon

STDs
- put class dictionary declaration inside of class initialization
- added DataRoot for Peter and Brandon (this way, we aren’t overwriting
each other’s folder paths
- comments around how Speed Test file objects are added to the structure

SpeedTestFile
- just adding comments

Pings
- initialization now takes a string of data, and parses the information
(cut from Indiv Speed Test)
- __str__ method now uses “pad” correctly

PingThread
- initialization now takes a string of data, and parses the information
(cut from Indiv Speed Test). Also need a thread number
- __str__ method now uses “pad” correctly

IndivSpeedTest
- SO MANY COMMENTS
- changed “a” variable to “dataLine”. It’s a bit more descriptive
- Removed blocks of same code into class initialization functions
Merge branch 'Walker-TestBranch'
Ping/Ping Thread inits, short __str__

A few global changes were made, like a short_str variable in all
classes that can be used to make the str() calls print a little less.
Currently only affects Ping/PingThread level

STDs
- adding short_str to cheats calls (“-c”, “-cs”, etc.)

STF
- added short_str class variable
- small formatting changes to __str__ method

IndivST
- added short_str variable
- when parsing thread number, using strip() instead of replace
- when creating ping thread, passing down short_str state (of True or
False)
- __str__ formatting changes

PingThread
- name changes to class variables
- added DataDirection (will be Up or Down)
- fleshed out __str__ method

Pings
- added size_string and speed_string class variable. This is so that
printouts are a little easier to read
- __str__ method has a few IF/ELSEs that are used to find the space
padding for each part
Merge branch 'master' into Walker-TestBranch
Added short __str__ options to all classes
Something kinda works. new func CovertTo2D

in SpeedTestDataStructure, new function convertStructureTo2D will go
through each Speed Test file in it’s internal structure and have it
call it’s converter.

in SpeedTestFile, the bulk of the converting is done. It starts by
declaring the array that will be returned. It then appends the
Filename, Datetime, and other information. It then iterates through
each of it’s tests, and converts them.
With each test, it gets the longest thread time (i.e., longest TCP
download time) and creates the column headers for that test. It then
uses the PingThread’s new array_itize function to convert the thread to
an array.

in PingThread, the array_itize function starts by creating an array
with the pipe number and direction as values. It then loops through all
of the pings (minus the last one) and appends the size and speed
separately. Afterward, it pads the array with empty values (e.g. for
when the thread is 30 seconds long but the longest thread of that test
is 50). The last two values are the final size and speed (the “sum”
Ping, per se)

main.py uses print (pretty print) to print out the resulting conversion
Merge branch 'master' into Walker-TestBranch
Almost there!!

CSVExporter
- cast “col” as str, just in case (there are some numbers in the array
passed in)

main.py
- added tkinter for file dialog box
- so many STDs….. :)
- made a 3-D nested for loop for creating CSV files from what was
returned in the convert function

STDs
- altered creation of “toBeReturned”. It was originally just making a
reference to the object’s structure, which was no bueno

SpeedTestFile
- added empty line to 2D array

TO DO!!
- Fix UDP conversion
- work on StDev algorithm
- test with more files (have currently only tested with one)
Merge remote-tracking branch 'origin/Brandon's-REAL-Test-Branch'
Merge branch 'Walker-TestBranch'
Fixed converter

When the converter got to the UDP tests (with only one thread), it
wasn’t going down enough lines. Now it does. :)
Other small fix

When .csv was imported to excel, 1-2 was converted to 1-Feb. Now,
second timers are 1.0-2.0 (all are cast as floats)
TCP calculator at 40%

ALL
- added our emails in authors section of description

CSVExporter
- added comments

main.py
- added code that calls the TCP StDev function
- Slightly altered output to go into one folder

utils
- now has check for if run as main

STDs
- Have code for running all of the calculator in sub classes, and end
result gives us the 2D arrays we need
- IN PROGRESS: The function that converts the Up/Down dictionaries of
StDev values into the 2D arrays we want

IndivSpeedTest
- wrote first few line of function that calculated the thread StDev
values
— “calc_StDev_ofThreadSumsByDirection”