Ejemplo n.º 1
0
class AnalysisModifierTestCase(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        src = os.path.join(get_data_dir(), 'opychrondata.db')
        db = isotope_db_factory(src, remove=False)
        with db.session_ctx():
            ans = db.get_analyses()
            cls.analyses = [MAnalysis(ai) for ai in ans]
        cls.new_identifier = '2000'

    def setUp(self):
        maindb = pychron_source_factory()
        sdb = massspec_source_factory()

        self.modifier = AnalysisModifier(main_db=maindb, secondary_db=sdb)

    def test_modifier_pychrondb(self):
        self.modifier.use_main = True
        self.modifier.use_secondary = False

        an = self.analyses[0]
        can = copy.copy(an)
        can.identifier = self.new_identifier

        self.modifier.modify_analyses([an], [can])

        db = self.modifier.main_db
        with db.session_ctx():
            new_an = db.get_analysis_uuid(an.uuid)
            self.assertEqual(new_an.labnumber.identifier, self.new_identifier)

    def test_modifier_secondarydb(self):
        self.modifier.use_main = False
        self.modifier.use_secondary = True

        an = self.analyses[0]
        can = copy.copy(an)
        can.identifier = self.new_identifier
        self.modifier.modify_analyses([an], [can])

        db = self.modifier.secondary_db
        with db.session_ctx():
            old_an = db.get_analysis(an.labnumber, an.aliquot, an.step)
            self.assertIsNone(old_an)

            new_an = db.get_analysis(self.new_identifier,
                                     '{:02d}'.format(an.aliquot), an.step)
            self.assertEqual(
                new_an.RID, make_runid(self.new_identifier, an.aliquot,
                                       an.step))
            self.assertEqual(new_an.sample.Sample, 'Bar')
Ejemplo n.º 2
0
class AnalysisModifierTestCase(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        src = os.path.join(get_data_dir(), 'opychrondata.db')
        db = isotope_db_factory(src, remove=False)
        with db.session_ctx():
            ans = db.get_analyses()
            cls.analyses = [MAnalysis(ai) for ai in ans]
        cls.new_identifier = '2000'

    def setUp(self):
        maindb = pychron_source_factory()
        sdb = massspec_source_factory()

        self.modifier = AnalysisModifier(main_db=maindb,
                                         secondary_db=sdb)

    def test_modifier_pychrondb(self):
        self.modifier.use_main = True
        self.modifier.use_secondary = False

        an = self.analyses[0]
        can = copy.copy(an)
        can.identifier = self.new_identifier

        self.modifier.modify_analyses([an], [can])

        db = self.modifier.main_db
        with db.session_ctx():
            new_an = db.get_analysis_uuid(an.uuid)
            self.assertEqual(new_an.labnumber.identifier, self.new_identifier)

    def test_modifier_secondarydb(self):
        self.modifier.use_main = False
        self.modifier.use_secondary = True

        an = self.analyses[0]
        can = copy.copy(an)
        can.identifier = self.new_identifier
        self.modifier.modify_analyses([an], [can])

        db = self.modifier.secondary_db
        with db.session_ctx():
            old_an = db.get_analysis(an.labnumber, an.aliquot, an.step)
            self.assertIsNone(old_an)

            new_an = db.get_analysis(self.new_identifier, '{:02d}'.format(an.aliquot), an.step)
            self.assertEqual(new_an.RID, make_runid(self.new_identifier, an.aliquot, an.step))
            self.assertEqual(new_an.sample.Sample, 'Bar')
Ejemplo n.º 3
0
    def setUp(self):
        maindb = pychron_source_factory()
        sdb = massspec_source_factory()

        self.modifier = AnalysisModifier(main_db=maindb,
                                         secondary_db=sdb)
Ejemplo n.º 4
0
    def setUp(self):
        maindb = pychron_source_factory()
        sdb = massspec_source_factory()

        self.modifier = AnalysisModifier(main_db=maindb, secondary_db=sdb)