From ba3a3be8be08c5832f5f8f5491ccc01ff06cbe33 Mon Sep 17 00:00:00 2001
From: "Mads M. Pedersen" <mmpe@dtu.dk>
Date: Fri, 21 Jul 2017 08:37:05 +0200
Subject: [PATCH] Revert "first test_file implementation"

This reverts commit 2dc182d9265d406a2f1eba40ba8b045207ef837a.
---
 wetb/utils/test_files.py            | 45 +++++++++++++++++++++++++++++
 wetb/utils/tests/test_test_files.py | 41 ++++++++++++++++++++++++++
 2 files changed, 86 insertions(+)
 create mode 100644 wetb/utils/test_files.py
 create mode 100644 wetb/utils/tests/test_test_files.py

diff --git a/wetb/utils/test_files.py b/wetb/utils/test_files.py
new file mode 100644
index 00000000..37696225
--- /dev/null
+++ b/wetb/utils/test_files.py
@@ -0,0 +1,45 @@
+'''
+Created on 20. jul. 2017
+
+@author: mmpe
+'''
+import os
+import wetb
+import urllib.request
+from fileinput import filename
+import inspect
+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):
+    if not os.path.isabs(filename):
+        index = [os.path.realpath(s[1]) for s in inspect.stack()].index(__file__) + 1
+        tfp = os.path.dirname(inspect.stack()[index][1]) + "/test_files/"
+        filename = tfp + filename
+    
+    if os.path.exists(filename):
+        return filename
+    else:
+        filename2 = os.path.realpath(os.path.join(wetb_rep_path, 'downloaded_test_files', 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):
+    wetb_rep_path = os.path.join(os.path.dirname(wetb.__file__), "../")
+    folder = os.path.dirname(TestFile_rep_path + os.path.relpath(filename, wetb_rep_path))
+    if not os.path.exists(folder):
+        os.makedirs(folder)
+    os.rename(filename, os.path.join(folder, os.path.basename(filename)+'.txt'))
+    
+    
+    
+    
+    
\ No newline at end of file
diff --git a/wetb/utils/tests/test_test_files.py b/wetb/utils/tests/test_test_files.py
new file mode 100644
index 00000000..76a2f09c
--- /dev/null
+++ b/wetb/utils/tests/test_test_files.py
@@ -0,0 +1,41 @@
+'''
+Created on 20. jul. 2017
+
+@author: mmpe
+'''
+import unittest
+from wetb.utils.test_files import move2test_files, get_test_file
+import os
+from wetb.utils import test_files
+import wetb
+
+
+tfp = os.path.join(os.path.dirname(__file__) + "/test_files/")
+class Test_test_files(unittest.TestCase):
+    def test_move2test_files(self):
+        dst = test_files.default_TestFile_rep_path+ "wetb/utils/tests/test_files/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):
+                os.remove(dst)
+            if not os.path.isfile(src):
+                with open(src,'w') as fid:
+                    fid.write("This is a test file")
+            move2test_files(src)
+            self.assertTrue(os.path.isfile(dst))
+
+    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')
+        self.assertTrue(fn1)
+        os.remove(fn1)
+        fn2 = get_test_file('test_file.txt')
+        self.assertEqual(fn2, fn)
+        self.assertTrue(os.path.isfile(fn2))
+        
+
+if __name__ == "__main__":
+    #import sys;sys.argv = ['', 'Test.testName']
+    unittest.main()
\ No newline at end of file
-- 
GitLab