source: trunk/anuga_core/source/anuga/utilities/test_file_utils.py @ 7765

Last change on this file since 7765 was 7765, checked in by hudson, 14 years ago

Refactoring - moved file conversion routines to file_conversion folder, moved file loading/saving functions to file module.

File size: 2.0 KB
Line 
1import unittest
2import tempfile
3import os
4import shutil
5
6from anuga.utilities.file_utils import copy_code_files
7
8
9class Test_FileUtils(unittest.TestCase):
10               
11    def test_copy_code_files(self):
12        '''test that the copy_code_files() function is sane.'''
13
14        def create_file(f):
15            fd = open(f, 'w')
16            fd.write('%s\n' % f)
17            fd.close()
18
19        # create working directories and test files
20        work_dir = tempfile.mkdtemp()
21        dst_dir = tempfile.mkdtemp(dir=work_dir)
22        src_dir = tempfile.mkdtemp(dir=work_dir)
23
24        f1 = 'file1'       
25        filename1 = os.path.join(src_dir, f1)
26        create_file(filename1)
27        f2 = 'file2'       
28        filename2 = os.path.join(src_dir, f2)
29        create_file(filename2)
30        f3 = 'file3'       
31        filename3 = os.path.join(src_dir, f3)
32        create_file(filename3)
33        f4 = 'file4'       
34        filename4 = os.path.join(src_dir, f4)
35        create_file(filename4)
36        f5 = 'file5'       
37        filename5 = os.path.join(src_dir, f5)
38        create_file(filename5)
39
40        # exercise the copy function
41        copy_code_files(dst_dir, filename1)
42        copy_code_files(dst_dir, filename1, filename2)
43        copy_code_files(dst_dir, (filename4, filename5, filename3))
44
45        # test that files were actually copied
46        self.failUnless(os.access(os.path.join(dst_dir, f1), os.F_OK))
47        self.failUnless(os.access(os.path.join(dst_dir, f2), os.F_OK))
48        self.failUnless(os.access(os.path.join(dst_dir, f3), os.F_OK))
49        self.failUnless(os.access(os.path.join(dst_dir, f4), os.F_OK))
50        self.failUnless(os.access(os.path.join(dst_dir, f5), os.F_OK))
51
52        # clean up
53        shutil.rmtree(work_dir)
54           
55
56#-------------------------------------------------------------
57
58if __name__ == "__main__":
59    #suite = unittest.makeSuite(Test_Data_Manager, 'test_sww2domain2')
60    suite = unittest.makeSuite(Test_FileUtils, 'test_sww')
61    runner = unittest.TextTestRunner() #verbosity=2)
62    runner.run(suite)   
Note: See TracBrowser for help on using the repository browser.