Skip to content
Snippets Groups Projects
Commit 5e2d9ded authored by Mads M. Pedersen's avatar Mads M. Pedersen
Browse files

Merge branch '59-test_files-solution-is-temporary' into 'master'

Resolve "test_files solution is temporary"

Closes #59

See merge request !38
parents 6cae8857 85389b27
No related branches found
No related tags found
1 merge request!38Resolve "test_files solution is temporary"
Pipeline #
[submodule "TestFiles"]
path = TestFiles
url = https://mmpe@gitlab.windenergy.dtu.dk/toolbox/TestFiles.git
TestFiles @ 2935f60d
Subproject commit 2935f60df7616606d4a7951b12d967d513b2b37b
...@@ -5,39 +5,36 @@ Created on 20. jul. 2017 ...@@ -5,39 +5,36 @@ Created on 20. jul. 2017
''' '''
import os import os
import wetb import wetb
import urllib.request
from fileinput import filename
import inspect import inspect
wetb_rep_path = os.path.join(os.path.dirname(wetb.__file__), "../") wetb_rep_path = os.path.join(os.path.dirname(wetb.__file__), "../")
default_TestFile_rep_path=os.path.join(os.path.dirname(wetb.__file__) + "/../../TestFiles/")
def get_test_file(filename):
def _absolute_filename(filename):
if not os.path.isabs(filename): if not os.path.isabs(filename):
index = [os.path.realpath(s[1]) for s in inspect.stack()].index(__file__) + 1 index = [os.path.realpath(s[1]) for s in inspect.stack()].index(__file__) + 2
tfp = os.path.dirname(inspect.stack()[index][1]) + "/test_files/" caller_module_path = os.path.dirname(inspect.stack()[index][1])
tfp = caller_module_path + "/test_files/"
filename = tfp + filename filename = tfp + filename
return filename
def get_test_file(filename):
filename = _absolute_filename(filename)
if os.path.exists(filename): if os.path.exists(filename):
return filename return filename
else: else:
filename2 = os.path.realpath(os.path.join(wetb_rep_path, 'downloaded_test_files', os.path.relpath(filename, wetb_rep_path))) return os.path.join(wetb_rep_path, 'TestFiles', os.path.relpath(filename, wetb_rep_path))
if not os.path.isfile(filename2):
#url = 'https://gitlab.windenergy.dtu.dk/toolbox/TestFiles/%s'%os.path.relpath(filename, wetb_rep_path)
url = 'http://tools.windenergy.dtu.dk/TestFiles/%s.txt'%os.path.relpath(filename, wetb_rep_path).replace("\\","/")
print ("download %s\nfrom %s"%(filename, url))
if not os.path.exists(os.path.dirname(filename2)):
os.makedirs(os.path.dirname(filename2))
urllib.request.urlretrieve(url, filename2)
return filename2
def move2test_files(filename,TestFile_rep_path=default_TestFile_rep_path): def move2test_files(filename):
wetb_rep_path = os.path.join(os.path.dirname(wetb.__file__), "../") filename = _absolute_filename(filename)
folder = os.path.dirname(TestFile_rep_path + os.path.relpath(filename, wetb_rep_path)) assert os.path.isfile(filename), filename
dst_filename = os.path.join(wetb_rep_path, 'TestFiles', os.path.relpath(filename, wetb_rep_path))
folder = os.path.dirname(dst_filename)
if not os.path.exists(folder): if not os.path.exists(folder):
os.makedirs(folder) os.makedirs(folder)
os.rename(filename, os.path.join(folder, os.path.basename(filename)+'.txt')) os.rename(filename, dst_filename)
......
...@@ -13,28 +13,23 @@ import wetb ...@@ -13,28 +13,23 @@ import wetb
tfp = os.path.join(os.path.dirname(__file__) + "/test_files/") tfp = os.path.join(os.path.dirname(__file__) + "/test_files/")
class Test_test_files(unittest.TestCase): class Test_test_files(unittest.TestCase):
def test_move2test_files(self): def test_move2test_files(self):
dst = test_files.default_TestFile_rep_path+ "wetb/utils/tests/test_files/tmp_test_file.txt" dst = os.path.dirname(wetb.__file__) + "/../TestFiles/wetb/utils/tests/test_files/tmp_test_file.txt"
src = tfp+'tmp_test_file.txt' src = tfp+'tmp_test_file.txt'
if os.path.isdir(test_files.default_TestFile_rep_path): if os.path.isfile(dst):
if os.path.isfile(dst): os.remove(dst)
os.remove(dst) if not os.path.isfile(src):
if not os.path.isfile(src): with open(src,'w') as fid:
with open(src,'w') as fid: fid.write("This is a test file")
fid.write("This is a test file") move2test_files(src)
move2test_files(src) self.assertTrue(os.path.isfile(dst))
self.assertTrue(os.path.isfile(dst))
def test_test_files(self): def test_test_files(self):
fn = os.path.realpath(os.path.dirname(wetb.__file__) + '/../downloaded_test_files/wetb/utils/tests/test_files/test_file.txt')
if os.path.isfile(fn):
os.remove(fn)
fn1 = get_test_file(tfp+'test_file.txt') fn1 = get_test_file(tfp+'test_file.txt')
self.assertTrue(fn1) self.assertTrue(fn1)
os.remove(fn1)
fn2 = get_test_file('test_file.txt') fn2 = get_test_file('test_file.txt')
self.assertEqual(fn2, fn) self.assertEqual(fn1, fn2)
self.assertTrue(os.path.isfile(fn2))
if __name__ == "__main__": if __name__ == "__main__":
#import sys;sys.argv = ['', 'Test.testName'] #import sys;sys.argv = ['', 'Test.testName']
......
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