예제 #1
0
def test_daily_min_string():
    """Test for TypeError when passing strings"""
    from inflammation.models import daily_min
    from pytest import raises

    with raises(TypeError):
        daily_min([['Doesnt', 'work'], ['with', 'strings']])
예제 #2
0
def test_daily_min_string():
    """Test for TypeError when passing strings"""
    from inflammation.models import daily_min
    from pytest import raises

    with raises(TypeError):
        daily_min([['Cannot', 'average'], ['string', 'arguments']])
예제 #3
0
def test_daily_min_integers():
    """Test that mean function works for an array of positive integers."""

    test_array = np.array([[1, 2], [3, 4], [5, 6]])

    # Need to use Numpy testing functions to compare arrays
    npt.assert_array_equal(np.array([1, 2]), daily_min(test_array))
예제 #4
0
def test_daily_min_not_rectangular():
    """Test for TypeError when passing strings"""
    from pytest import raises

    test_array = np.array([[1, 2], [3, 4], [5, 'test']])
    with raises(TypeError):
        npt.assert_array_equal(np.array([1, 2]), daily_min(test_array))
예제 #5
0
def main():
    """The MVC Controller of the patient inflammation data system.

    The Controller is responsible for:
    - selecting the necessary models and views for the current task
    - passing data between models and views
    """
    parser = argparse.ArgumentParser(
        description='A basic patient inflammation data management system')

    parser.add_argument(
        'infiles',
        nargs='+',
        help='Input CSV(s) containing inflammation series for each patient')

    args = parser.parse_args()

    InFiles = args.infiles
    if not isinstance(InFiles, list):
        InFiles = [args.infiles]

    for filename in InFiles:
        inflammation_data = models.load_csv(filename)

        view_data = {
            'average': models.daily_mean(inflammation_data),
            'max': models.daily_max(inflammation_data),
            'min': models.daily_min(inflammation_data)
        }

        views.visualize(view_data)
예제 #6
0
def test_daily_min():
    from inflammation.models import daily_min

    test_array = np.array([[1, 3, 5],
                            [3, 4, 1],
                            [2, 4, 9]])

    npt.assert_array_equal(np.array([1, 3, 1]), daily_min(test_array))
def main(args):
    """The MVC Controller of the patient data system.

    The Controller is responsible for:
    - selecting the necessary models and views for the current task
    - passing data between models and views
    """
    infiles = args.infiles
    if not isinstance(infiles, list):
        infiles = [args.infiles]

    for filename in infiles:
        inflammation_data = models.load_csv(filename)

        view_data = {'average': models.daily_mean(inflammation_data),
                     'max': models.daily_max(inflammation_data),
                     'min': models.daily_min(inflammation_data)}

        views.visualize(view_data)
예제 #8
0
def test_daily_min():
    from inflammation.models import daily_min
    test_array = np.array([[1, 2], [3, 4], [5, 6]])

    npt.assert_array_equal(np.array([1, 2]), daily_min(test_array))
예제 #9
0
def test_daily_min_noarg():
    """Test for TypeError when passing no arguments"""
    from inflammation.models import daily_min
    from pytest import raises
    with raises(TypeError):
        daily_min()
예제 #10
0
def test_min_bool():
    assert daily_min([True, True, True, False]) == 0
예제 #11
0
def test_daily_min_too_many_inputs():
    test_array = np.array([[1, 2], [3, 4], [5, 6]])
    # if there is a typeError anywhere in this indented block (with is a context manager)
    with raises(TypeError):
        daily_min(test_array, test_array)
예제 #12
0
def test_daily_min_string():

    # if there is a typeError anywhere in this indented block (with is a context manager)
    with raises(TypeError):
        daily_min([['Cannot', 'min'], ['string', 'arguments']])
예제 #13
0
def test_daily_min(test, expected):
    npt.assert_equal(np.array(expected), daily_min(np.array(test)))
예제 #14
0
def test_bool():
    from inflammation.models import daily_min
    assert daily_min([True, True, False]) == 0
예제 #15
0
def test_daily_min(test, expected):
    """Test mean function works for array of zeroes and positive integers."""
    from inflammation.models import daily_min
    npt.assert_array_equal(np.array(expected), daily_min(np.array(test)))
예제 #16
0
def test_daily_min_none():
    """Test for TypeError when passing strings"""
    from pytest import raises

    with raises(TypeError):
        daily_min([[None, None], [None, None]])
예제 #17
0
def test_daily_min_string():
    """Test for TypeError when passing strings"""
    from pytest import raises

    with raises(TypeError):
        daily_min([['Cannot', 'min'], ['string', 'arguments']])
예제 #18
0
def test_daily_min(test, expected):
    """Test min function works for zeroes, positive integers, mix of positive/negative integers."""
    from inflammation.models import daily_min
    npt.assert_array_equal(np.array(expected), daily_min(np.array(test)))
예제 #19
0
def test_daily_min_zeros():
    """Test that mean function works for an array of zeros."""

    test_array = np.array([[0, 0], [0, 0], [0, 0]])
    # Need to use Numpy testing functions to compare arrays
    npt.assert_array_equal(np.array([0, 0]), daily_min(test_array))