source: sasview/test/projectsaveandload/test/utest_project.py @ 497e06d

unittest-saveload
Last change on this file since 497e06d was 497e06d, checked in by krzywon, 7 years ago

Remove GUI necessity and add method to remove temp files when finished.

  • Property mode set to 100644
File size: 1.8 KB
Line 
1"""
2    Unit tests for saving and loading .svs files
3"""
4
5import os
6import sys
7import unittest
8import warnings
9if sys.version_info[0] >= 3:
10    from io import StringIO
11else:
12    from StringIO import StringIO
13
14from sas.sascalc.dataloader.loader import Loader
15from sas.sascalc.fit.pagestate import Reader as fit_state_reader
16from sas.sasgui.perspectives.invariant.invariant_state import Reader as invariant_reader
17from sas.sasgui.perspectives.pr.inversion_state import Reader as pr_reader
18from sas.sasgui.perspectives.corfunc.corfunc_state import Reader as corfunc_reader
19
20warnings.simplefilter("ignore")
21
22TEMP_FOLDER = "temp_folder"
23STATE_LOADERS = [fit_state_reader, invariant_reader, pr_reader, corfunc_reader]
24
25
26class projects(unittest.TestCase):
27
28    def setUp(self):
29        """
30        Set up the base unit test class and variables used throughout the tests
31        """
32        self.addCleanup(self.remove_dir)
33        self.loader = Loader()
34        self.data1d = self.loader.load("test_data/data1D.h5")
35        self.data2d = self.loader.load("test_data/data2D.h5")
36        if not (os.path.isdir(TEMP_FOLDER)):
37            os.makedirs(TEMP_FOLDER)
38
39    def remove_dir(self):
40        if(os.path.isdir(TEMP_FOLDER)):
41            os.removedirs(TEMP_FOLDER)
42
43    def test_saveload_data1d_fitting_only(self):
44        """
45        Test saving and loading a project with a single data set sent to fitting
46        """
47        self.assertTrue(1 == 1)
48
49        # TODO: Send 1D to fitting, select model, save project, load project
50        # TODO: Send both to fitting, select model on both, save/load
51        # TODO: Send both to fitting, select model on one, save/load
52        # TODO: Send 1D to each other persepective, save/load
53        # TODO: Send 1D to every perspective, save/load
54        # TODO: Save/load simultaneous/constrained fit project
Note: See TracBrowser for help on using the repository browser.