Skip to content
Snippets Groups Projects
Commit 06304138 authored by Tu, Ethan's avatar Tu, Ethan
Browse files

Delete test_pkOptimizer.py

parent 08e8841f
No related branches found
No related tags found
No related merge requests found
# -*- coding: utf-8 -*-
"""
Spyder Editor
This is a temporary script file.
"""
import pathlib
import pkOptimizer
import numpy as np
import pytest
test0 = [100, 14.2, 1.2, 0.25]
test1 = [255, 7.6, 4 ,0]
test2 = [-255, 7.6, 4 ,0]
test3 = [255, -7.6, 4 ,0]
test4 = [255, 7.6, -4 ,0]
test5 = [255, 7.6, 4 ,-2]
test6 = [12255, 7.6, 4 ,0]
test7 = [255, 2357.6, 4 ,0]
test8 = [255, 7.6, 2214 ,0]
test9 = [255, 7.6, 4 ,17770]
test10 = [0, 0, 0 ,0]
test11 = [0, 1,0]
test12 = [0, 1]
test13 = [1]
test14 = []
defaultGamma = np.array([0., 0., 0., 0., 0., 0., 0.605, 1.981, 3.65, 5.312, 6.796, 8.012, 8.928, 9.548, 9.893, 10., 9.907, 9.653, 9.275, 8.807, 8.277, 7.711, 7.127, 6.541, 5.967])
pk1 = pkOptimizer.pkOptimizer(pathlib.Path('Data').absolute())
assert pk1.wd == pathlib.Path('Data').absolute()
pk2 = pkOptimizer.pkOptimizer(pathlib.Path('Data').absolute())
def test_pkOptimizer_init():
#Test directory is same as one given
assert pk1.wd == pathlib.Path('Data').absolute()
def test_pkOptimizer_getData_noFile():
# Test if the function raises the exception if nonexisting file name is passed as parameter.
with pytest.raises(ValueError) as excinfo:
pk1.getData("non-existing_file.txt")
assert "file does not exist" in str(excinfo.value)
def test_pkOptimizer_getData():
#Test data is correctly red from .csv given
pk1.getData('CTPERF005_rest.csv')
assert pk1.time[1] == 2.0687260000000265
assert pk1.aorta == [0.0, 3.0, 16.0, 89.0, 240.0, 348.0, 413.0, 345.0, 226.0, 127.0, 72.0, 42.0]
assert pk1. myo == [44.0, 46.0, 51.0, 51.0, 51.0, 59.0, 72.0, 78.0, 84.0, 91.0, 91.0, 84.0]
pk2.getData('CTPERF005_stress.csv')
assert pk2.time[1] == 2.060608000000002
assert pk2.aorta == [0.0, 79.0, 197.0, 235.0, 253.0, 200.0, 127.0, 70.0, 41.0, 35.0, 36.0, 44.0]
assert pk2. myo == [62.0, 61.0, 69.0, 91.0, 97.0, 102.0, 104.0, 104.0, 100.0, 95.0, 92.0, 88.0]
def test_pkOptimizer_gamma_Var():
#Test our gamma curve is the same
for i in range(len(pk2.gamma_var())):
assert pk2.gamma_var()[i] == defaultGamma[i]
def test_pkOptimizer_MSE():
#Test a bunch of cases for calculating MSE
assert pk2.MSE(test0) == 8568.843
assert pk2.MSE(test1) == 701.975
assert pk2.MSE(test2) == 1000000
assert pk2.MSE(test3) == 1000000
assert pk2.MSE(test4) == 1000000
assert pk2.MSE(test5) == 1000000
assert pk2.MSE(test6) == 37556492.001
assert pk2.MSE(test7) == 1000000
assert pk2.MSE(test8) == 1000000
assert pk2.MSE(test9) == 19287.583
assert pk2.MSE(test10) == 1000000
assert pk2.MSE(test11) == 1000000
assert pk2.MSE(test12) == 1000000
assert pk2.MSE(test13) == 1000000
assert pk2.MSE(test14) == 1000000
def test_pkOptimizer_funcFit():
#Test if FuncFit outputs our optimized parameters for rest and stress state
popt1 = pk1.inputFuncFit(test1)
popt2 = pk2.inputFuncFit(test1)
for i in range(4):
assert popt1[i] == [403.17, 12.43, 9.44, 0. ][i]
for i in range(4):
assert popt2[i] == [253.78, 6.78, 2.52, 0. ][i]
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment