Ignore:
Timestamp:
Nov 4, 2017 7:21:04 AM (7 years ago)
Author:
Stuart Prescott <stuart@…>
Parents:
cb11a25
git-author:
Stuart Prescott <stuart@…> (11/02/17 00:50:18)
git-committer:
Stuart Prescott <stuart@…> (11/04/17 07:21:04)
Message:

Fix tests to find resources without changing dir

Test resources are in the same directory (or a child directory) of the test
code so the code can locate the resources itself rather than relying on the
tests being run from a certain location. This allows the tests to be used to
test the installed code rather than the current checkout and also allows
automated test discovery with tools like py.test to be used, running all
tests at once without a runner.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • test/sasdataloader/test/utest_abs_reader.py

    rfe15198 r0675e6b  
    1616 
    1717 
     18def find(filename): 
     19    return os.path.join(os.path.dirname(__file__), filename) 
     20 
     21 
    1822class abs_reader(unittest.TestCase): 
    1923 
    2024    def setUp(self): 
    2125        reader = AbsReader() 
    22         self.data_list = reader.read("jan08002.ABS") 
     26        self.data_list = reader.read(find("jan08002.ABS")) 
    2327        self.data = self.data_list[0] 
    2428 
     
    3135            tests won't pass 
    3236        """ 
    33         self.assertEqual(self.data.filename, "jan08002.ABS") 
     37        self.assertEqual(os.path.basename(self.data.filename), "jan08002.ABS") 
    3438        self.assertEqual(self.data.meta_data['loader'], "IGOR 1D") 
    3539 
     
    6973    def test_generic_loader(self): 
    7074        # the generic loader should work as well 
    71         data = Loader().load("jan08002.ABS") 
     75        data = Loader().load(find("jan08002.ABS")) 
    7276        self.assertEqual(data[0].meta_data['loader'], "IGOR 1D") 
    7377 
     
    7680    def setUp(self): 
    7781        reader = DANSEReader() 
    78         self.data_list = reader.read("MP_New.sans") 
     82        self.data_list = reader.read(find("MP_New.sans")) 
    7983        self.data = self.data_list[0] 
    8084 
     
    8892        """ 
    8993        self.assertEqual(len(self.data_list), 1) 
    90         self.assertEqual(self.data.filename, "MP_New.sans") 
     94        self.assertEqual(os.path.basename(self.data.filename), "MP_New.sans") 
    9195        self.assertEqual(self.data.meta_data['loader'], "DANSE") 
    9296 
     
    114118    def test_generic_loader(self): 
    115119        # the generic loader should work as well 
    116         data = Loader().load("MP_New.sans") 
     120        data = Loader().load(find("MP_New.sans")) 
    117121        self.assertEqual(len(data), 1) 
    118122        self.assertEqual(data[0].meta_data['loader'], "DANSE") 
     
    123127    def setUp(self): 
    124128        reader = CANSASReader() 
    125         self.data_list = reader.read("cansas1d.xml") 
     129        self.data_list = reader.read(find("cansas1d.xml")) 
    126130        self.data = self.data_list[0] 
    127131 
    128132    def test_generic_loader(self): 
    129133        # the generic loader should work as well 
    130         data = Loader().load("cansas1d.xml") 
     134        data = Loader().load(find("cansas1d.xml")) 
    131135        self.assertEqual(len(data), 1) 
    132136        self.assertEqual(data[0].meta_data['loader'], "CanSAS XML 1D") 
    133137 
    134138    def test_cansas_checkdata(self): 
    135         self.assertEqual(self.data.filename, "cansas1d.xml") 
     139        self.assertEqual(os.path.basename(self.data.filename), "cansas1d.xml") 
    136140        self._checkdata() 
    137141 
     
    282286 
    283287        filename = "write_test.xml" 
    284         r.write(filename, self.data) 
    285         data = Loader().load(filename) 
     288        r.write(find(filename), self.data) 
     289        data = Loader().load(find(filename)) 
    286290        self.data = data[0] 
    287291        self.assertEqual(len(data), 1) 
     
    297301        """ 
    298302        filename = "cansas1d_units.xml" 
    299         data = CANSASReader().read(filename) 
     303        data = CANSASReader().read(find(filename)) 
    300304        self.data = data[0] 
    301305        self.assertEqual(len(data), 1) 
     
    309313        """ 
    310314        filename = "cansas1d_badunits.xml" 
    311         data = CANSASReader().read(filename) 
     315        data = CANSASReader().read(find(filename)) 
    312316        self.data = data[0] 
    313317        self.assertEqual(len(data), 1) 
     
    326330        """ 
    327331        filename = "cansas1d_slit.xml" 
    328         data = CANSASReader().read(filename) 
     332        data = CANSASReader().read(find(filename)) 
    329333        self.data = data[0] 
    330334        self.assertEqual(len(data), 1) 
Note: See TracChangeset for help on using the changeset viewer.