예제 #1
0
    def test_flagversions(self):
        """test_flagversions -- Check if existing flagversions file is overwritten"""
        # create flagversions file
        ret = importasap(infile=self.infile, outputvis=self.outfile,
                         flagbackup=True, overwrite=True)
        self.assertTrue(os.path.exists(self.outfile))
        self._check_flagversions(self.outfile)

        # save state with different name
        version_name = 'OverwriteTest'
        aflocal = casac.agentflagger()
        aflocal.open(self.outfile)
        aflocal.saveflagversion(versionname=version_name,
                                comment='flag state for testing',
                                merge='save')
        aflocal.done()

        # then, create flagversions file
        ret = importasap(infile=self.infile, outputvis=self.outfile,
                         flagbackup=True, overwrite=True)
        self.assertTrue(os.path.exists(self.outfile))
        self._check_flagversions(self.outfile)

        # verification
        aflocal = casac.agentflagger()
        aflocal.open(self.outfile)
        versions_list = aflocal.getflagversionlist()
        self.assertTrue(all(map(lambda x: re.match('^%s : .*$'%(version_name), x) is None, versions_list)))
        aflocal.done()
예제 #2
0
 def test_overwrite(self):
     """test_overwrite: File existence check"""
     shutil.copytree(self.infile, self.outfile)
     with self.assertRaisesRegexp(RuntimeError, '.* exists\.$') as cm:
         importasap(infile=self.infile,
                    outputvis=self.outfile,
                    overwrite=False)
예제 #3
0
 def test_invaliddata(self):
     """test_invaliddata: Invalid data check"""
     os.remove(os.path.join(self.infile, 'table.info'))
     with self.assertRaisesRegexp(RuntimeError,
                                  '.* is not a valid Scantable\.$') as cm:
         importasap(infile=self.infile,
                    outputvis=self.outfile,
                    overwrite=False)
예제 #4
0
    def test_noflagversions(self):
        """test_noflagversions -- Do not create flagversions file"""
        flagversions = self._flagversions(self.infile)
        
        # create flagversions file
        ret = importasap(infile=self.infile, outputvis=self.outfile,
                         flagbackup=True, overwrite=True)
        self.assertTrue(os.path.exists(self.outfile))
        self._check_flagversions(self.outfile)

        # run importasap
        # existing flagversions file must be deleted
        ret = importasap(infile=self.infile, outputvis=self.outfile,
                         flagbackup=False, overwrite=True)
        self.assertTrue(os.path.exists(self.outfile))
        self.assertFalse(os.path.exists(flagversions))
예제 #5
0
    def test_noflagversions(self):
        """test_noflagversions -- Do not create flagversions file"""
        flagversions = self._flagversions(self.infile)

        # create flagversions file
        ret = importasap(infile=self.infile,
                         outputvis=self.outfile,
                         flagbackup=True,
                         overwrite=True)
        self.assertTrue(os.path.exists(self.outfile))
        self._check_flagversions(self.outfile)

        # run importasap
        # existing flagversions file must be deleted
        ret = importasap(infile=self.infile,
                         outputvis=self.outfile,
                         flagbackup=False,
                         overwrite=True)
        self.assertTrue(os.path.exists(self.outfile))
        self.assertFalse(os.path.exists(flagversions))
예제 #6
0
 def test_normal(self):
     """test_normal: Normal data import"""
     ret = importasap(infile=self.infile, outputvis=self.outfile,
                      flagbackup=True, overwrite=True)
     self.assertTrue(os.path.exists(self.outfile))
     try:
         # to check if outfile is valid MS
         myms.open(self.outfile)
         myms.close()
         
     except Exception, e:
         print e
         self.fail('outputvis is not a valid ms')
예제 #7
0
    def test_flagversions(self):
        """test_flagversions -- Check if existing flagversions file is overwritten"""
        # create flagversions file
        ret = importasap(infile=self.infile,
                         outputvis=self.outfile,
                         flagbackup=True,
                         overwrite=True)
        self.assertTrue(os.path.exists(self.outfile))
        self._check_flagversions(self.outfile)

        # save state with different name
        version_name = 'OverwriteTest'
        aflocal = casac.agentflagger()
        aflocal.open(self.outfile)
        aflocal.saveflagversion(versionname=version_name,
                                comment='flag state for testing',
                                merge='save')
        aflocal.done()

        # then, create flagversions file
        ret = importasap(infile=self.infile,
                         outputvis=self.outfile,
                         flagbackup=True,
                         overwrite=True)
        self.assertTrue(os.path.exists(self.outfile))
        self._check_flagversions(self.outfile)

        # verification
        aflocal = casac.agentflagger()
        aflocal.open(self.outfile)
        versions_list = aflocal.getflagversionlist()
        self.assertTrue(
            all(
                map(
                    lambda x: re.match('^%s : .*$' %
                                       (version_name), x) is None,
                    versions_list)))
        aflocal.done()
예제 #8
0
    def test_normal(self):
        """test_normal: Normal data import"""
        ret = importasap(infile=self.infile,
                         outputvis=self.outfile,
                         flagbackup=True,
                         overwrite=True)
        self.assertTrue(os.path.exists(self.outfile))
        try:
            # to check if outfile is valid MS
            myms.open(self.outfile)
            myms.close()

        except Exception, e:
            print e
            self.fail('outputvis is not a valid ms')
예제 #9
0
 def test_invaliddata(self):
     """test_invaliddata: Invalid data check"""
     os.remove(os.path.join(self.infile, 'table.info'))
     with self.assertRaisesRegexp(RuntimeError, '.* is not a valid Scantable\.$') as cm:
         importasap(infile=self.infile, outputvis=self.outfile, overwrite=False)
예제 #10
0
 def test_overwrite(self):
     """test_overwrite: File existence check"""
     shutil.copytree(self.infile, self.outfile)
     with self.assertRaisesRegexp(RuntimeError, '.* exists\.$') as cm:
         importasap(infile=self.infile, outputvis=self.outfile, overwrite=False)