Build: #6 was successful

Job: Tag Branch for Packages was successful

Stages & jobs

  1. Tag Branch

  2. Default Stage

  3. Create Critial Test Plan Branch

Build log

The build generated 15,832 lines of output.The output is too long and has been truncated to the last 1,000 lines. Download or view full build log.

10-Jul-2019 13:16:43 +        # SPW 10 is missing
10-Jul-2019 13:16:43 +        stats10 = self.ca.get(spw='10', antenna=self.antennaName, axis='TIME',
10-Jul-2019 13:16:43 +                              ap='AMPLITUDE')
10-Jul-2019 13:16:43 +        self.assertEquals(stats10, {})
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +        # SPW 12 also missing
10-Jul-2019 13:16:43 +        stats12 = self.ca.get(spw='12', antenna=self.antennaName, axis='TIME',
10-Jul-2019 13:16:43 +                              ap='AMPLITUDE')
10-Jul-2019 13:16:43 +        self.assertEquals(stats12, {})
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +    def test_get_one_spw(self):
10-Jul-2019 13:16:43 +        """ Test tool get function. Uses the main stuff in CalAnalysys/CalStats::stats """
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +        # SPW 13 should be there
10-Jul-2019 13:16:43 +        # This uses parameters in similar wasy as the pipeline does in tsyscal/renderer
10-Jul-2019 13:16:43 +        stats13 = self.ca.get(spw='13', antenna=self.antennaName, axis='TIME',
10-Jul-2019 13:16:43 +                              ap='AMPLITUDE')
10-Jul-2019 13:16:43 +        self._check_stats_items_values(stats13)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +    def test_get_noparams(self):
10-Jul-2019 13:16:43 +        """ Test tool get function, no selection, no other params.
10-Jul-2019 13:16:43 +             Uses stuff in CalAnalysys/CalStats::stats """
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +        stats_all = self.ca.get()
10-Jul-2019 13:16:43 +        self._check_stats_items_values(stats_all)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +class calanalysis_tsys1_fit(calanalysis_tsys1_base):
10-Jul-2019 13:16:43 +    """ Tests on the calanalysis.fit function. """
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +    def _check_ca_fit(self, fit):
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +        for entry in ['vars', 'frequency', 'res', 'valueErr', 'flag', 'covars',
10-Jul-2019 13:16:43 +                      'pars', 'value', 'model']:
10-Jul-2019 13:16:43 +            self.assertTrue(entry in fit['1'])
10-Jul-2019 13:16:43 +            self.assertEquals(type(fit['1'][entry]), numpy.ndarray)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +        for entry in ['feed', 'rap', 'antenna1', 'antenna2', 'weight', 'field',
10-Jul-2019 13:16:43 +                      'abscissa', 'order']:
10-Jul-2019 13:16:43 +            self.assertTrue(entry in fit['1'])
10-Jul-2019 13:16:43 +            self.assertEquals(type(fit['1'][entry]), str)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +        for entry in ['resMean', 'redChi2', 'time', 'resVar']:
10-Jul-2019 13:16:43 +            self.assertTrue(entry in fit['1'])
10-Jul-2019 13:16:43 +            self.assertEquals(type(fit['1'][entry]), float)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +        self.assertTrue(fit['1']['abscissa'], 'frequency')
10-Jul-2019 13:16:43 +        self.assertTrue(fit['1']['order'], 'LINEAR')
10-Jul-2019 13:16:43 +        self.assertTrue(fit['1']['validFit'])
10-Jul-2019 13:16:43 +        self.assertTrue(numpy.all(fit['1']['flag'] == False))
10-Jul-2019 13:16:43 +        self.assertGreater(fit['1']['resVar'], 0)
10-Jul-2019 13:16:43 +        self.assertLess(fit['1']['resVar'], 200)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +    def test_fit_amp(self):
10-Jul-2019 13:16:43 +        """ Test tool fit function (amp). Exercises stuff in CalAnalysys/CalStatsFitter """
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +        # An amp fit inspired by pipeline/qa/bpcal.py
10-Jul-2019 13:16:43 +        fit_amp = self.ca.fit(spw='13', axis='TIME', ap='AMPLITUDE', norm=True,
10-Jul-2019 13:16:43 +                              order='LINEAR', type='LSQ', weight=False)
10-Jul-2019 13:16:43 +        fit_len = 392
10-Jul-2019 13:16:43 +        self.assertEquals(len(fit_amp), fit_len)
10-Jul-2019 13:16:43 +        self._check_ca_fit(fit_amp)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +    def test_fit_phase(self):
10-Jul-2019 13:16:43 +        """ Test tool fit function (phase). Exercises stuff in CalAnalysys/CalStatsFitter """
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +        # A phase fit inspired by pipeline/qa/bpcal.py
10-Jul-2019 13:16:43 +        fit_phase = self.ca.fit(spw='13', axis='TIME', ap='PHASE', unwrap=True,
10-Jul-2019 13:16:43 +                                jumpmax=0.1, order='LINEAR', type='LSQ', weight=False)
10-Jul-2019 13:16:43 +        fit_len = 392
10-Jul-2019 13:16:43 +        self.assertEquals(len(fit_phase), fit_len)
10-Jul-2019 13:16:43 +        self._check_ca_fit(fit_phase)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +    def test_fit_amp_sel(self):
10-Jul-2019 13:16:43 +        """ Test tool fit function (amp + selection).
10-Jul-2019 13:16:43 +            Exercises stuff in CalAnalysys/CalStatsFitter """
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +        # A fit with additional field selection / less outputs
10-Jul-2019 13:16:43 +        fit_amp_field = self.ca.fit(field='Callisto', spw='13', axis='TIME', ap='AMPLITUDE',
10-Jul-2019 13:16:43 +                                    norm=True, order='LINEAR', type='LSQ', weight=False)
10-Jul-2019 13:16:43 +        fit_len_field = 28
10-Jul-2019 13:16:43 +        self.assertEquals(len(fit_amp_field), fit_len_field)
10-Jul-2019 13:16:43 +        self._check_ca_fit(fit_amp_field)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 def suite():
10-Jul-2019 13:16:43 -        return [calanalysis_tsys1]
10-Jul-2019 13:16:43 +    return [calanalysis_tsys1_introspective, calanalysis_tsys1_get, calanalysis_tsys1_fit]
10-Jul-2019 13:16:43 diff --git a/gcwrap/python/scripts/tests/test_imhead.py b/gcwrap/python/scripts/tests/test_imhead.py
10-Jul-2019 13:16:43 index b7d96f7..ecf6613 100644
10-Jul-2019 13:16:43 --- a/gcwrap/python/scripts/tests/test_imhead.py
10-Jul-2019 13:16:43 +++ b/gcwrap/python/scripts/tests/test_imhead.py
10-Jul-2019 13:16:43 @@ -926,7 +926,8 @@ class imhead_test(unittest.TestCase):
10-Jul-2019 13:16:43          
10-Jul-2019 13:16:43          for image in [imf, imc]:
10-Jul-2019 13:16:43              logfile = image + ".log"
10-Jul-2019 13:16:43 -            open(logfile,'w').close
10-Jul-2019 13:16:43 +            # Because append?
10-Jul-2019 13:16:43 +            open(logfile,'w').close()
10-Jul-2019 13:16:43              casalog.setlogfile(logfile)
10-Jul-2019 13:16:43              res = imhead(imagename=image, mode='list', verbose=True)
10-Jul-2019 13:16:43              self.assertTrue(res)
10-Jul-2019 13:16:43 diff --git a/gcwrap/python/scripts/tests/test_refimager.py b/gcwrap/python/scripts/tests/test_refimager.py
10-Jul-2019 13:16:43 index 9cb77f1..3322b9f 100644
10-Jul-2019 13:16:43 --- a/gcwrap/python/scripts/tests/test_refimager.py
10-Jul-2019 13:16:43 +++ b/gcwrap/python/scripts/tests/test_refimager.py
10-Jul-2019 13:16:43 @@ -95,6 +95,7 @@ import operator
10-Jul-2019 13:16:43 import inspect
10-Jul-2019 13:16:43 import numpy as np
10-Jul-2019 13:16:43 from parallel.parallel_task_helper import ParallelTaskHelper
10-Jul-2019 13:16:43 +from imagerhelpers.parallel_imager_helper import PyParallelImagerHelper
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 _ia = iatool( )
10-Jul-2019 13:16:43 @@ -124,8 +125,11 @@ class testref_base(unittest.TestCase):
10-Jul-2019 13:16:43            # To use subdir in the output image names in some tests (CAS-10937)
10-Jul-2019 13:16:43            self.img_subdir = 'refimager_tst_subdir'
10-Jul-2019 13:16:43            self.parallel = False
10-Jul-2019 13:16:43 +          self.nnode = 0
10-Jul-2019 13:16:43            if ParallelTaskHelper.isMPIEnabled():
10-Jul-2019 13:16:43                self.parallel = True
10-Jul-2019 13:16:43 +              self.PH = PyParallelImagerHelper()
10-Jul-2019 13:16:43 +              self.nnode = len(self.PH.getNodeList())
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43            self.th = TestHelpers()
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 @@ -246,6 +250,28 @@ class test_onefield(testref_base):
10-Jul-2019 13:16:43            self.delData(ms2)
10-Jul-2019 13:16:43            self.checkfinal(pstr=report)
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 +     @unittest.skipIf(ParallelTaskHelper.isMPIEnabled(), "Skip test. onefield with two MSs, briggs weighing. Enable this when CAS011978 is fixed")
10-Jul-2019 13:16:43 +     def test_onefield_twoMS_Briggs(self):
10-Jul-2019 13:16:43 +          """ [onefield] Test_Onefield_twoMS with Briggs weighting: One field, two input MSs (for verification of CAS-11978)"""
10-Jul-2019 13:16:43 +          ms1 = 'refim_point_onespw0.ms'
10-Jul-2019 13:16:43 +          ms2 = 'refim_point_onespw1.ms'
10-Jul-2019 13:16:43 +          self.prepData(ms1)
10-Jul-2019 13:16:43 +          self.prepData(ms2)
10-Jul-2019 13:16:43 +#          try:
10-Jul-2019 13:16:43 +#               ## This run should fail with an exception
10-Jul-2019 13:16:43 +#               ret = tclean(vis=[ms1,ms2],field='0',spw=['0','0'], imagename=self.img,imsize=100,cell='8.0arcsec',deconvolver='hogbom',niter=10)
10-Jul-2019 13:16:43 +#               correct=False
10-Jul-2019 13:16:43 +#          except Exception as e:
10-Jul-2019 13:16:43 +#              correct=True
10-Jul-2019 13:16:43 +#          self.assertTrue(correct)
10-Jul-2019 13:16:43 +          ## This run should go smoothly.
10-Jul-2019 13:16:43 +          ret = tclean(vis=[ms1,ms2],field='0',spw=['0','0'], imagename=self.img,imsize=100,cell='8.0arcsec',deconvolver='hogbom',niter=10,datacolumn='data',weighting='briggs', interactive=0, parallel=self.parallel)
10-Jul-2019 13:16:43 +          report=self.th.checkall(ret=ret, peakres=0.365259, modflux=0.798692, imexist=[self.img+'.psf',self.img+'.residual'])
10-Jul-2019 13:16:43 +          self.delData(ms1)
10-Jul-2019 13:16:43 +          self.delData(ms2)
10-Jul-2019 13:16:43 +          self.checkfinal(pstr=report)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43       def test_onefield_twoMS_diffcolumns(self):
10-Jul-2019 13:16:43            """ [onefield] Test_Onefield_twoMS_diffcolumns : One field, two input MSs, one with data and one with data and corrected """
10-Jul-2019 13:16:43            ms1 = 'refim_point_onespw0.ms'
10-Jul-2019 13:16:43 @@ -736,7 +762,10 @@ class test_multifield(testref_base):
10-Jul-2019 13:16:43            ret={}
10-Jul-2019 13:16:43            if self.parallel:
10-Jul-2019 13:16:43              ret=self.th.mergeParaCubeResults(retpar, ['iterdone', 'nmajordone'])
10-Jul-2019 13:16:43 -            iterdone_expected=46
10-Jul-2019 13:16:43 +            if self.nnode < 2:
10-Jul-2019 13:16:43 +              iterdone_expected=42  # single server case = serial
10-Jul-2019 13:16:43 +            else:
10-Jul-2019 13:16:43 +              iterdone_expected=46
10-Jul-2019 13:16:43            else:
10-Jul-2019 13:16:43              iterdone_expected=42
10-Jul-2019 13:16:43              ret=retpar
10-Jul-2019 13:16:43 @@ -2548,6 +2577,16 @@ class test_widefield(testref_base):
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43            #do stokes V too..
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 +     @unittest.skipIf(ParallelTaskHelper.isMPIEnabled(), "Skip test. mosaic, Briggs weighting with mosweight=True. Enable this after fixing CAS-11978")
10-Jul-2019 13:16:43 +     def test_widefield_mosaicft_mfs_mosweightTrue(self):
10-Jul-2019 13:16:43 +          """ [widefield] Test_Widefield_mosaic : MFS with mosaicft  stokes I briggs mosweight=True(default)"""
10-Jul-2019 13:16:43 +          self.prepData("refim_mawproject.ms")
10-Jul-2019 13:16:43 +          ret = tclean(vis=self.msfile,spw='1',field='*',imagename=self.img,imsize=512,cell='10.0arcsec',phasecenter="J2000 19:59:28.500 +40.44.01.50",
10-Jul-2019 13:16:43 +                       niter=30,gridder='mosaicft',deconvolver='hogbom',pblimit=0.3,weighting='briggs', parallel=self.parallel)
10-Jul-2019 13:16:43 +          report=self.th.checkall(imexist=[self.img+'.image', self.img+'.psf', self.img+'.weight'],imval=[(self.img+'.image',0.962813, [256,256,0,0]),(self.img+'.weight',0.50520, [256,256,0,0]) ] )
10-Jul-2019 13:16:43 +          #ret = clean(vis=self.msfile,spw='1',field='*',imagename=self.img+'.old',imsize=512,cell='10.0arcsec',phasecenter="J2000 19:59:28.500 +40.44.01.50",niter=30,imagermode='mosaic',psfmode='hogbom')
10-Jul-2019 13:16:43 +          self.checkfinal(report)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43       def test_widefield_mosaicft_mtmfs(self):
10-Jul-2019 13:16:43            """ [widefield] Test_Widefield_mosaicft_mtmfs : MT-MFS with mosaicft  stokes I, alpha """
10-Jul-2019 13:16:43            self.prepData("refim_mawproject.ms")
10-Jul-2019 13:16:43 diff --git a/gcwrap/python/scripts/tests/test_refimager_old.py b/gcwrap/python/scripts/tests/test_refimager_old.py
10-Jul-2019 13:16:43 index 1831760..eb45272 100644
10-Jul-2019 13:16:43 --- a/gcwrap/python/scripts/tests/test_refimager_old.py
10-Jul-2019 13:16:43 +++ b/gcwrap/python/scripts/tests/test_refimager_old.py
10-Jul-2019 13:16:43 @@ -52,7 +52,7 @@ def getparams(testnum=1,testid=0, parallelmajor=False,parallelminor=False,parall
10-Jul-2019 13:16:43                                         aterm=True, psterm=False, mterm=True,\
10-Jul-2019 13:16:43                                         wbawp = False,
10-Jul-2019 13:16:43                                         cfcache = "perm.mytest0.cube.cfcache.mos",
10-Jul-2019 13:16:43 -                                       dopointing = False, dopbcorr = True, conjbeams = True,
10-Jul-2019 13:16:43 +                                       usepointing = False, dopbcorr = True, conjbeams = True,
10-Jul-2019 13:16:43                                         computepastep =360.0, rotatepastep =5.0,\
10-Jul-2019 13:16:43                                         deconvolver='hogbom',\
10-Jul-2019 13:16:43                                         #pblimit=0.1,normtype='flatsky',
10-Jul-2019 13:16:43 @@ -431,7 +431,7 @@ def getparams(testnum=1,testid=0, parallelmajor=False,parallelminor=False,parall
10-Jul-2019 13:16:43                                         aterm=True, psterm=False, mterm=True,\
10-Jul-2019 13:16:43                                         wbawp = True,
10-Jul-2019 13:16:43                                         cfcache = "perm.wb.nt2.mytest0.cfcache",\
10-Jul-2019 13:16:43 -                                       dopointing = False, dopbcorr = True, conjbeams = True,
10-Jul-2019 13:16:43 +                                       usepointing = False, dopbcorr = True, conjbeams = True,
10-Jul-2019 13:16:43                                         computepastep =360.0, rotatepastep =360.0,#5.0,\
10-Jul-2019 13:16:43                                         deconvolver='mtmfs',\
10-Jul-2019 13:16:43                                         pblimit=0.1,normtype='flatnoise',
10-Jul-2019 13:16:43 @@ -459,7 +459,7 @@ def getparams(testnum=1,testid=0, parallelmajor=False,parallelminor=False,parall
10-Jul-2019 13:16:43                                         aterm=True, psterm=False, mterm=True,\
10-Jul-2019 13:16:43                                         wbawp = True,
10-Jul-2019 13:16:43                                         cfcache = "perm.wb.mytest0.cfcache",\
10-Jul-2019 13:16:43 -                                       dopointing = False, dopbcorr = True, conjbeams = True,
10-Jul-2019 13:16:43 +                                       usepointing = False, dopbcorr = True, conjbeams = True,
10-Jul-2019 13:16:43                                         computepastep =360.0, rotatepastep =5.0,\
10-Jul-2019 13:16:43                                         deconvolver='hogbom',\
10-Jul-2019 13:16:43                                         pblimit=0.1,normtype='flatnoise',
10-Jul-2019 13:16:43 @@ -487,7 +487,7 @@ def getparams(testnum=1,testid=0, parallelmajor=False,parallelminor=False,parall
10-Jul-2019 13:16:43                                         aterm=True, psterm=False, mterm=True,\
10-Jul-2019 13:16:43                                         wbawp = False,
10-Jul-2019 13:16:43                                         cfcache = "perm.mytest0.cfcache.mos",#.offcenter",\
10-Jul-2019 13:16:43 -                                       dopointing = False, dopbcorr = True, conjbeams = True,
10-Jul-2019 13:16:43 +                                       usepointing = False, dopbcorr = True, conjbeams = True,
10-Jul-2019 13:16:43                                         computepastep =360.0, rotatepastep =5.0,\
10-Jul-2019 13:16:43                                         deconvolver='hogbom',\
10-Jul-2019 13:16:43                                         #pblimit=0.1,normtype='flatsky',
10-Jul-2019 13:16:43 diff --git a/gcwrap/python/scripts/tests/test_req_task_listobs.py b/gcwrap/python/scripts/tests/test_req_task_listobs.py
10-Jul-2019 13:16:43 index e1499aa..5db2f06 100644
10-Jul-2019 13:16:43 --- a/gcwrap/python/scripts/tests/test_req_task_listobs.py
10-Jul-2019 13:16:43 +++ b/gcwrap/python/scripts/tests/test_req_task_listobs.py
10-Jul-2019 13:16:43 @@ -76,8 +76,8 @@ else:
10-Jul-2019 13:16:43 if CASA6:
10-Jul-2019 13:16:43      mesSet = casatools.ctsys.resolve('visibilities/alma/uid___X02_X3d737_X1_01_small.ms')
10-Jul-2019 13:16:43 else:
10-Jul-2019 13:16:43 -    if os.path.exists(os.environ.get('CASAPATH').split()[0] + '/data/casa-data-req/visibilities/uid___X02_X3d737_X1_01_small.ms'):
10-Jul-2019 13:16:43 -        messet = os.environ.get('CASAPATH').split()[0] + '/data/casa-data-req/visibilities/uid___X02_X3d737_X1_01_small.ms'
10-Jul-2019 13:16:43 +    if os.path.exists(os.environ.get('CASAPATH').split()[0] + '/data/casa-data-req/visibilities/alma/uid___X02_X3d737_X1_01_small.ms'):
10-Jul-2019 13:16:43 +        mesSet = os.environ.get('CASAPATH').split()[0] + '/data/casa-data-req/visibilities/alma/uid___X02_X3d737_X1_01_small.ms'
10-Jul-2019 13:16:43      else:
10-Jul-2019 13:16:43          mesSet = datapath + 'uid___X02_X3d737_X1_01_small.ms'
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 @@ -105,7 +105,6 @@ def _sha1it(filename):
10-Jul-2019 13:16:43 class listobs_test_base(unittest.TestCase):
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43      def setUp(self):
10-Jul-2019 13:16:43 -        self.res = None
10-Jul-2019 13:16:43          if not CASA6:
10-Jul-2019 13:16:43              default(listobs)
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 @@ -256,7 +255,7 @@ class listobs_test_base(unittest.TestCase):
10-Jul-2019 13:16:43          self.assertTrue('No match found for the antenna specificion [ID(s): [3]]' in open('testlog.log').read(), msg='No warning for ID out of range')
10-Jul-2019 13:16:43          # This one is marked as correct by the documentation, but CASA disagrees
10-Jul-2019 13:16:43          listobs(vis=dataset, antenna=['0,DV01'])
10-Jul-2019 13:16:43 -        self.assertTrue('incorrect data type used for field baseline' in open('testlog.log').read(), msg='Failed to recognize list as incorrect data type')
10-Jul-2019 13:16:43 +        self.assertTrue('incorrect data type' in open('testlog.log').read(), msg='Failed to recognize list as incorrect data type')
10-Jul-2019 13:16:43          # return to default log file
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43      def selectcheck(self, dataset):
10-Jul-2019 13:16:43 @@ -298,7 +297,7 @@ class listobs_test_base(unittest.TestCase):
10-Jul-2019 13:16:43          self.assertFalse('WARN' in open('testlog.log').read(), msg='Warnings are raised for valid inputs')
10-Jul-2019 13:16:43          # should raise warnings
10-Jul-2019 13:16:43          listobs(vis=dataset, uvrange=['0~50', '60~100'])
10-Jul-2019 13:16:43 -        self.assertTrue('incorrect data type used for field uvdist' in open('testlog.log').read(), msg='Fails to raise warning for wrong data type')
10-Jul-2019 13:16:43 +        self.assertTrue('incorrect data type' in open('testlog.log').read(), msg='Fails to raise warning for wrong data type')
10-Jul-2019 13:16:43          listobs(vis=dataset, uvrange='0-100')
10-Jul-2019 13:16:43          self.assertTrue('near char. 2 in string "0-100"' in open('testlog.log').read(), msg='Fails to raise warning for wrong delimiter')
10-Jul-2019 13:16:43          listobs(vis=dataset, uvrange='abc')
10-Jul-2019 13:16:43 @@ -316,7 +315,7 @@ class listobs_test_base(unittest.TestCase):
10-Jul-2019 13:16:43          listobs(vis=dataset, timerange='abc')
10-Jul-2019 13:16:43          self.assertTrue('Parse error at or near ' in open('testlog.log').read())
10-Jul-2019 13:16:43          listobs(vis=dataset, timerange=[])
10-Jul-2019 13:16:43 -        self.assertTrue('incorrect data type used for field time' in open('testlog.log').read())
10-Jul-2019 13:16:43 +        self.assertTrue('incorrect data type' in open('testlog.log').read())
10-Jul-2019 13:16:43          listobs(vis=dataset, timerange='03:00:00-04:00:00')
10-Jul-2019 13:16:43          self.assertTrue('near char. 9 in string "03:00:00-04:00:00"' in open('testlog.log').read())
10-Jul-2019 13:16:43          listobs(vis=dataset, timerange='3~4')
10-Jul-2019 13:16:43 @@ -346,7 +345,7 @@ class listobs_test_base(unittest.TestCase):
10-Jul-2019 13:16:43          self.assertFalse('WARN' in open('testlog.log').read(), msg='There are warnings for inputs that should raise none')
10-Jul-2019 13:16:43          # These should raise a warning
10-Jul-2019 13:16:43          listobs(vis=dataset, intent=[])
10-Jul-2019 13:16:43 -        self.assertTrue('incorrect data type used for field scanintent' in open('testlog.log').read(), msg='Incorrect data type list accepted')
10-Jul-2019 13:16:43 +        self.assertTrue('incorrect data type' in open('testlog.log').read(), msg='Incorrect data type list accepted')
10-Jul-2019 13:16:43          listobs(vis=dataset, intent='abc')
10-Jul-2019 13:16:43          self.assertTrue('No match found for "abc"' in open('testlog.log').read(), msg='Invalid string accepted without warning')
10-Jul-2019 13:16:43          # Set log path back to default
10-Jul-2019 13:16:43 @@ -775,10 +774,13 @@ class test_listobs(listobs_test_base):
10-Jul-2019 13:16:43      def test_CAS_6733(self):
10-Jul-2019 13:16:43          """Verify listobs runs to completion on data set in CAS-6733. This was an infinite loop bugfix"""
10-Jul-2019 13:16:43          if CASA6:
10-Jul-2019 13:16:43 -            vis = casatools.ctsys.resolve('regression/unittest/mstransform/CAS-6733.ms')
10-Jul-2019 13:16:43 +            vis = casatools.ctsys.resolve('visibilities/evla/CAS-6733.ms')
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 +        elif os.path.exists(os.environ.get('CASAPATH').split()[0] + '/data/casa-data-req'):
10-Jul-2019 13:16:43 +            vis = os.environ.get('CASAPATH').split()[0] + '/data/casa-data-req/visibilities/evla/CAS-6733.ms'
10-Jul-2019 13:16:43          else:
10-Jul-2019 13:16:43 -            vis = os.environ.get('CASAPATH').split()[0] + '/data/regression/unittest/mstransform/' + "CAS-6733.ms"
10-Jul-2019 13:16:43 +            vis = os.environ.get('CASAPATH').split()[0] + '/casa-data-req/visibilities/evla/CAS-6733.ms'
10-Jul-2019 13:16:43 +           
10-Jul-2019 13:16:43          self.assertTrue(listobs(vis=vis))
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43      # Test average interval
10-Jul-2019 13:16:43 diff --git a/gcwrap/python/scripts/tests/test_tclean.py b/gcwrap/python/scripts/tests/test_tclean.py
10-Jul-2019 13:16:43 index b8e2d53..0a3ea84 100644
10-Jul-2019 13:16:43 --- a/gcwrap/python/scripts/tests/test_tclean.py
10-Jul-2019 13:16:43 +++ b/gcwrap/python/scripts/tests/test_tclean.py
10-Jul-2019 13:16:43 @@ -51,11 +51,8 @@
10-Jul-2019 13:16:43 #     test_cube_D1
10-Jul-2019 13:16:43 #
10-Jul-2019 13:16:43 # Added to skip at least for 5.5
10-Jul-2019 13:16:43 -#     test_iterbot_cube_2 (was failing in master)
10-Jul-2019 13:16:43 -#     test_multifield_both_cube (was failing in master)
10-Jul-2019 13:16:43 #     test_cube_chanchunks
10-Jul-2019 13:16:43 #     test_cube_chanchunks_savemodel (possible race conditions)
10-Jul-2019 13:16:43 -#     test_mask_5 (was failing in master)
10-Jul-2019 13:16:43 #     test_modelvis_2 (possible race conditions)
10-Jul-2019 13:16:43 #     test_modelvis_3 (possible race conditions)
10-Jul-2019 13:16:43 #     test_modelvis_5 (possible race conditions)
10-Jul-2019 13:16:43 @@ -67,6 +64,11 @@
10-Jul-2019 13:16:43 #     test_modelvis_11 (possible race conditions)
10-Jul-2019 13:16:43 #     test_startmodel_with_mask_mfs(possible race conditions)
10-Jul-2019 13:16:43 #     test_startmodel_with_mask_mtmfs(possible race conditions)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +#Ressurected from skipping after some fixes
10-Jul-2019 13:16:43 +#     test_mask_5
10-Jul-2019 13:16:43 +#     test_iterbot_cube_2
10-Jul-2019 13:16:43 +#     test_multifield_both_cube
10-Jul-2019 13:16:43 ##########################################################################
10-Jul-2019 13:16:43 #
10-Jul-2019 13:16:43 #  Datasets
10-Jul-2019 13:16:43 @@ -95,6 +97,7 @@ import operator
10-Jul-2019 13:16:43 import inspect
10-Jul-2019 13:16:43 import numpy as np
10-Jul-2019 13:16:43 from parallel.parallel_task_helper import ParallelTaskHelper
10-Jul-2019 13:16:43 +from imagerhelpers.parallel_imager_helper import PyParallelImagerHelper
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 _ia = iatool( )
10-Jul-2019 13:16:43 @@ -124,8 +127,11 @@ class testref_base(unittest.TestCase):
10-Jul-2019 13:16:43            # To use subdir in the output image names in some tests (CAS-10937)
10-Jul-2019 13:16:43            self.img_subdir = 'refimager_tst_subdir'
10-Jul-2019 13:16:43            self.parallel = False
10-Jul-2019 13:16:43 +          self.nnode = 0
10-Jul-2019 13:16:43            if ParallelTaskHelper.isMPIEnabled():
10-Jul-2019 13:16:43                self.parallel = True
10-Jul-2019 13:16:43 +              self.PH = PyParallelImagerHelper()
10-Jul-2019 13:16:43 +              self.nnode = len(self.PH.getNodeList())
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43            self.th = TestHelpers()
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 @@ -160,7 +166,7 @@ class testref_base(unittest.TestCase):
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43       def checkfinal(self,pstr=""):
10-Jul-2019 13:16:43            #pstr += "["+inspect.stack()[1][3]+"] : To re-run this test :  casa -c `echo $CASAPATH | awk '{print $1}'`/gcwrap/python/scripts/regressions/admin/runUnitTest.py test_refimager["+ inspect.stack()[1][3] +"]"
10-Jul-2019 13:16:43 -          pstr += "["+inspect.stack()[1][3]+"] : To re-run this test :  runUnitTest.main(['test_refimager["+ inspect.stack()[1][3] +"]'])"
10-Jul-2019 13:16:43 +          pstr += "["+inspect.stack()[1][3]+"] : To re-run this test :  runUnitTest.main(['test_tclean["+ inspect.stack()[1][3] +"]'])"
10-Jul-2019 13:16:43            casalog.post(pstr,'INFO')
10-Jul-2019 13:16:43            if( pstr.count("(Fail") > 0 ):
10-Jul-2019 13:16:43                 self.fail("\n"+pstr)
10-Jul-2019 13:16:43 @@ -226,8 +232,55 @@ class test_onefield(testref_base):
10-Jul-2019 13:16:43            report=self.th.checkall(imexist=[self.img+'.psf',self.img+'_2.psf',self.img+'_3.psf'] )
10-Jul-2019 13:16:43            self.checkfinal(pstr=report)
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 +     # weighting test
10-Jul-2019 13:16:43 +     def test_onefield_weighting(self):
10-Jul-2019 13:16:43 +          """ [onefield] Test_Onefield_weighting : mfs with different weighting (natural, uniform, briggs, radial, superuniform)"""
10-Jul-2019 13:16:43 +          self.prepData('refim_twochan.ms')
10-Jul-2019 13:16:43 +          # default = natural
10-Jul-2019 13:16:43 +          ret0 = tclean(vis=self.msfile,imagename=self.img+'0',imsize=100,cell='8.0arcsec',niter=10,weighting='natural', interactive=0,parallel=self.parallel)
10-Jul-2019 13:16:43 +          # uniform
10-Jul-2019 13:16:43 +          ret = tclean(vis=self.msfile,imagename=self.img,imsize=100,cell='8.0arcsec',niter=10,weighting='uniform', interactive=0,parallel=self.parallel)
10-Jul-2019 13:16:43 +          report=self.th.checkall(ret=ret, peakres=0.263, modflux=0.575, iterdone=10, imexist=[self.img+'.psf', self.img+'.residual', self.img+'.image', self.img+'.model'], imval=[(self.img+'.psf',1.0,[50,50,0,0])])
10-Jul-2019 13:16:43 +          self.checkfinal(pstr=report)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +          # briggs r=-2
10-Jul-2019 13:16:43 +          ret2 = tclean(vis=self.msfile,imagename=self.img+'2',imsize=100,cell='8.0arcsec',niter=10,weighting='briggs', robust=-2, interactive=0,parallel=self.parallel)     
10-Jul-2019 13:16:43 +          report2=self.th.checkall(ret=ret, peakres=0.263, modflux=0.575, iterdone=10, imexist=[self.img+'2.psf', self.img+'2.residual', self.img+'2.image', self.img+'2.model'], imval=[(self.img+'2.psf',1.0,[50,50,0,0])])
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +          # briggs r=0.5(default)
10-Jul-2019 13:16:43 +          ret3 = tclean(vis=self.msfile,imagename=self.img+'3',imsize=100,cell='8.0arcsec',niter=10,weighting='briggs', robust=0.5, interactive=0,parallel=self.parallel)     
10-Jul-2019 13:16:43 +          report3=self.th.checkall(ret=ret, peakres=0.263, modflux=0.575, iterdone=10, imexist=[self.img+'3.psf', self.img+'3.residual', self.img+'3.image', self.img+'3.model'], imval=[(self.img+'3.psf',1.0,[50,50,0,0])])
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +          # briggs r=2
10-Jul-2019 13:16:43 +          ret4 = tclean(vis=self.msfile,imagename=self.img+'4',imsize=100,cell='8.0arcsec',niter=10,weighting='briggs', robust=2, interactive=0,parallel=self.parallel)     
10-Jul-2019 13:16:43 +          report4=self.th.checkall(ret=ret, peakres=0.263, modflux=0.575, iterdone=10, imexist=[self.img+'4.psf', self.img+'4.residual', self.img+'4.image', self.img+'4.model'], imval=[(self.img+'4.psf',1.0,[50,50,0,0])])
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +          # radial
10-Jul-2019 13:16:43 +          ret5 = tclean(vis=self.msfile,imagename=self.img+'5',imsize=100,cell='8.0arcsec',niter=10,weighting='radial', interactive=0,parallel=self.parallel)     
10-Jul-2019 13:16:43 +          report5=self.th.checkall(ret=ret, peakres=0.263, modflux=0.575, iterdone=10, imexist=[self.img+'5.psf', self.img+'5.residual', self.img+'5.image', self.img+'5.model'], imval=[(self.img+'5.psf',1.0,[50,50,0,0])])
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +          # superuniform
10-Jul-2019 13:16:43 +          ret6 = tclean(vis=self.msfile,imagename=self.img+'6',imsize=100,cell='8.0arcsec',niter=10,weighting='superuniform', interactive=0,parallel=self.parallel)     
10-Jul-2019 13:16:43 +          report6=self.th.checkall(ret=ret, peakres=0.263, modflux=0.575, iterdone=10, imexist=[self.img+'6.psf', self.img+'6.residual', self.img+'6.image', self.img+'6.model'], imval=[(self.img+'6.psf',1.0,[50,50,0,0])])
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +          # beamareas: uniform < briggs-r=-2 < briggs r=0.5 < briggs r=+2 < natural, ...
10-Jul-2019 13:16:43 +          # by default, it checks if im1's beam < im2's beam
10-Jul-2019 13:16:43 +          print "Test beamarea of tst0.image (natural) is greater than beamarea of tst.image (uniform)"
10-Jul-2019 13:16:43 +          self.assertTrue(self.th.check_beam_compare(self.img+'.image', self.img+'0.image'))
10-Jul-2019 13:16:43 +          # parallel fails - uniform wt. psf seems to be bigger in parallel than that of serial run
10-Jul-2019 13:16:43 +          #print "Test beamarea of tst2.image (briggs -2) is greater than beamarea of tst.image (uniform)"
10-Jul-2019 13:16:43 +          #self.assertTrue(self.th.check_beam_compare(self.img+'.image', self.img+'2.image'))
10-Jul-2019 13:16:43 +          print "Test beamarea of tst3.image (briggs 0.5) is greater than beamarea of tst2.image (briggs -2))"
10-Jul-2019 13:16:43 +          self.assertTrue(self.th.check_beam_compare(self.img+'2.image', self.img+'3.image'))
10-Jul-2019 13:16:43 +          print "Test beamarea of tst4.image (briggs 2) is greater than beamarea of tst3.image (briggs 0.5))"
10-Jul-2019 13:16:43 +          self.assertTrue(self.th.check_beam_compare(self.img+'3.image', self.img+'4.image'))
10-Jul-2019 13:16:43 +     
10-Jul-2019 13:16:43 +     
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43       def test_onefield_twoMS(self):
10-Jul-2019 13:16:43 -          """ [onefield] Test_Onefield_twoMS : One field, two input MSs """
10-Jul-2019 13:16:43 +          """ [onefield] Test_Onefield_twoMS : One field, two input MSs, also
10-Jul-2019 13:16:43 +          test automatic fallback to 'data' column when no 'corrected' data
10-Jul-2019 13:16:43 +          column"""
10-Jul-2019 13:16:43            ms1 = 'refim_point_onespw0.ms'
10-Jul-2019 13:16:43            ms2 = 'refim_point_onespw1.ms'
10-Jul-2019 13:16:43            self.prepData(ms1)
10-Jul-2019 13:16:43 @@ -240,12 +293,34 @@ class test_onefield(testref_base):
10-Jul-2019 13:16:43 #              correct=True
10-Jul-2019 13:16:43 #          self.assertTrue(correct)
10-Jul-2019 13:16:43            ## This run should go smoothly.
10-Jul-2019 13:16:43 -          ret = tclean(vis=[ms1,ms2],field='0',spw=['0','0'], imagename=self.img,imsize=100,cell='8.0arcsec',deconvolver='hogbom',niter=10,datacolumn='data',parallel=self.parallel)
10-Jul-2019 13:16:43 +          ret = tclean(vis=[ms1,ms2],field='0',spw=['0','0'], imagename=self.img,imsize=100,cell='8.0arcsec',deconvolver='hogbom',niter=10,parallel=self.parallel)
10-Jul-2019 13:16:43            report=self.th.checkall(imexist=[self.img+'.psf',self.img+'.residual'])
10-Jul-2019 13:16:43            self.delData(ms1)
10-Jul-2019 13:16:43            self.delData(ms2)
10-Jul-2019 13:16:43            self.checkfinal(pstr=report)
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 +     @unittest.skipIf(ParallelTaskHelper.isMPIEnabled(), "Skip test. onefield with two MSs, briggs weighing. Enable this when CAS011978 is fixed")
10-Jul-2019 13:16:43 +     def test_onefield_twoMS_Briggs(self):
10-Jul-2019 13:16:43 +          """ [onefield] Test_Onefield_twoMS with Briggs weighting: One field, two input MSs (for verification of CAS-11978)"""
10-Jul-2019 13:16:43 +          ms1 = 'refim_point_onespw0.ms'
10-Jul-2019 13:16:43 +          ms2 = 'refim_point_onespw1.ms'
10-Jul-2019 13:16:43 +          self.prepData(ms1)
10-Jul-2019 13:16:43 +          self.prepData(ms2)
10-Jul-2019 13:16:43 +#          try:
10-Jul-2019 13:16:43 +#               ## This run should fail with an exception
10-Jul-2019 13:16:43 +#               ret = tclean(vis=[ms1,ms2],field='0',spw=['0','0'], imagename=self.img,imsize=100,cell='8.0arcsec',deconvolver='hogbom',niter=10)
10-Jul-2019 13:16:43 +#               correct=False
10-Jul-2019 13:16:43 +#          except Exception as e:
10-Jul-2019 13:16:43 +#              correct=True
10-Jul-2019 13:16:43 +#          self.assertTrue(correct)
10-Jul-2019 13:16:43 +          ## This run should go smoothly.
10-Jul-2019 13:16:43 +          ret = tclean(vis=[ms1,ms2],field='0',spw=['0','0'], imagename=self.img,imsize=100,cell='8.0arcsec',deconvolver='hogbom',niter=10,weighting='briggs', interactive=0, parallel=self.parallel)
10-Jul-2019 13:16:43 +          report=self.th.checkall(ret=ret, peakres=0.365259, modflux=0.798692, imexist=[self.img+'.psf',self.img+'.residual'])
10-Jul-2019 13:16:43 +          self.delData(ms1)
10-Jul-2019 13:16:43 +          self.delData(ms2)
10-Jul-2019 13:16:43 +          self.checkfinal(pstr=report)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43       def test_onefield_twoMS_diffcolumns(self):
10-Jul-2019 13:16:43            """ [onefield] Test_Onefield_twoMS_diffcolumns : One field, two input MSs, one with data and one with data and corrected """
10-Jul-2019 13:16:43            ms1 = 'refim_point_onespw0.ms'
10-Jul-2019 13:16:43 @@ -262,6 +337,7 @@ class test_onefield(testref_base):
10-Jul-2019 13:16:43            self.delData(ms1)
10-Jul-2019 13:16:43            self.delData(ms2)
10-Jul-2019 13:16:43            self.checkfinal(pstr=report)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43       @unittest.skipIf(ParallelTaskHelper.isMPIEnabled(), "Skip test. Erratic in parallel")
10-Jul-2019 13:16:43       def test_onefield_briggsabs(self):
10-Jul-2019 13:16:43            """[onefield] test_onefield_briggsabs: """
10-Jul-2019 13:16:43 @@ -431,6 +507,16 @@ class test_onefield(testref_base):
10-Jul-2019 13:16:43            ## iterdone=11 only because of the return (iterdone_p+1) in MultiTermMatrixCleaner::mtclean() !
10-Jul-2019 13:16:43            self.checkfinal(pstr=report)
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 +     
10-Jul-2019 13:16:43 +     def test_onefield_gridders(self):
10-Jul-2019 13:16:43 +          """ [onefield] Test_Onefield_gridders : Check all single field gridder equivalent names are accepted """
10-Jul-2019 13:16:43 +          self.prepData('refim_twochan.ms')
10-Jul-2019 13:16:43 +          ret = tclean(vis=self.msfile,imagename=self.img,imsize=100,cell='8.0arcsec',gridder='ft', interactive=0,parallel=self.parallel)
10-Jul-2019 13:16:43 +          report=self.th.checkall(imexist=[self.img+'.psf', self.img+'.residual', self.img+'.image'], imval=[(self.img+'.psf', 1.0, [50,50,0,0])])
10-Jul-2019 13:16:43 +          ret2 = tclean(vis=self.msfile,imagename=self.img,imsize=100,cell='8.0arcsec',gridder='gridft', interactive=0,parallel=self.parallel)
10-Jul-2019 13:16:43 +          report2=self.th.checkall(imexist=[self.img+'.psf', self.img+'.residual', self.img+'.image'], imval=[(self.img+'.psf', 1.0, [50,50,0,0])])
10-Jul-2019 13:16:43 +          self.checkfinal(pstr=report+report2)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43       def test_onefield_cube_restoringbeam(self):
10-Jul-2019 13:16:43            """ [onefield] Test explicit restoring beams for cube : Test peak flux with niter=0, compared with smoothing vs restoringbeam"""
10-Jul-2019 13:16:43 @@ -504,6 +590,31 @@ class test_onefield(testref_base):
10-Jul-2019 13:16:43            ## Pass or Fail (and why) ?
10-Jul-2019 13:16:43            self.checkfinal(report)
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 +     def test_onefield_projections(self):
10-Jul-2019 13:16:43 +          """ [onefield] Test_Onefield_projections : test selected projections  """
10-Jul-2019 13:16:43 +          self.prepData('refim_twochan.ms')
10-Jul-2019 13:16:43 +          # default projection = SIN
10-Jul-2019 13:16:43 +          ret = tclean(vis=self.msfile,imagename=self.img+'SIN',imsize=100,cell='8.0arcsec',interactive=0,parallel=self.parallel)
10-Jul-2019 13:16:43 +          ret2 = tclean(vis=self.msfile,imagename=self.img+'NCP',projection='NCP',imsize=100,cell='8.0arcsec',interactive=0,parallel=self.parallel)
10-Jul-2019 13:16:43 +          ret3 = tclean(vis=self.msfile,imagename=self.img+'TAN',projection='TAN',imsize=100,cell='8.0arcsec',interactive=0,parallel=self.parallel)
10-Jul-2019 13:16:43 +          ret4 = tclean(vis=self.msfile,imagename=self.img+'ARC',projection='ARC',imsize=100,cell='8.0arcsec',interactive=0,parallel=self.parallel)
10-Jul-2019 13:16:43 +          # Current fails with "wcs wcsset_error: Invalid parameter value" for HEALPix
10-Jul-2019 13:16:43 +          #ret5 = tclean(vis=self.msfile,imagename=self.img+'HPX',projection='HPX',imsize=100,cell='8.0arcsec',interactive=0,parallel=self.parallel)
10-Jul-2019 13:16:43 +          testname=inspect.stack()[0][3]
10-Jul-2019 13:16:43 +          report=self.th.checkall(ret=ret, imexist=[self.img+'SIN.image', self.img+'NCP.image', self.img+'TAN.image',self.img+'ARC.image'], imval=[(self.img+'SIN.psf',1.0,[50,50,0,0])])
10-Jul-2019 13:16:43 +          retSIN = imhead(self.img+"SIN.image", mode='list')
10-Jul-2019 13:16:43 +          retNCP = imhead(self.img+"NCP.image", mode='list')
10-Jul-2019 13:16:43 +          retTAN = imhead(self.img+"TAN.image", mode='list')
10-Jul-2019 13:16:43 +          retARC = imhead(self.img+"ARC.image", mode='list')
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 +          checkimage = "["+testname+"] The image in SIN projection : (" + self.th.verdict(retSIN['projection']=='SIN') + ")\n"
10-Jul-2019 13:16:43 +          # in serial 'NCP' is added in projection key but in parallel, this seems to be trancated.
10-Jul-2019 13:16:43 +          checkimage += "["+testname+"] The image in NCP projection : (" + self.th.verdict(retNCP['projection'].find('SIN ([0, 1.16122]')==0) + ")\n"
10-Jul-2019 13:16:43 +          checkimage += "["+testname+"] The image in TAN projection : (" + self.th.verdict(retTAN['projection']=='TAN') + ")\n"
10-Jul-2019 13:16:43 +          checkimage += "["+testname+"] The image in ARC projection : (" + self.th.verdict(retARC['projection']=='ARC') + ")\n"
10-Jul-2019 13:16:43 +         
10-Jul-2019 13:16:43 +          self.checkfinal(pstr=checkimage+report)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43 ##############################################
10-Jul-2019 13:16:43 ##############################################
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 @@ -596,7 +707,8 @@ class test_iterbot(testref_base):
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43            self.checkfinal(report)
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 -     @unittest.skipIf(ParallelTaskHelper.isMPIEnabled(), "Skip the test temporarily for 5.5")
10-Jul-2019 13:16:43 +     #@unittest.skipIf(ParallelTaskHelper.isMPIEnabled(), "Skip the test temporarily for 5.5")
10-Jul-2019 13:16:43 +     # test_imager_helper issue - now fixed and working
10-Jul-2019 13:16:43       def test_iterbot_cube_2(self):
10-Jul-2019 13:16:43            """ [iterbot] Test_Iterbot_cube_2 : High threshold, iterate only on line channels. """
10-Jul-2019 13:16:43            self.prepData('refim_point_withline.ms')
10-Jul-2019 13:16:43 @@ -604,6 +716,7 @@ class test_iterbot(testref_base):
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43            ret={}
10-Jul-2019 13:16:43            if self.parallel:
10-Jul-2019 13:16:43 +            # peakres and modflux is determined from node1
10-Jul-2019 13:16:43              ret=self.th.mergeParaCubeResults(retpar, ['iterdone', 'nmajordone', 'peakres', 'modflux'])
10-Jul-2019 13:16:43            else:
10-Jul-2019 13:16:43              ret=retpar
10-Jul-2019 13:16:43 @@ -726,7 +839,6 @@ class test_multifield(testref_base):
10-Jul-2019 13:16:43            self.checkfinal(report)
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 -     #@unittest.skipIf(ParallelTaskHelper.isMPIEnabled(), "Skip the test temporarily for 5.5")
10-Jul-2019 13:16:43       def test_multifield_both_cube(self):
10-Jul-2019 13:16:43            """ [multifield] Test_Multifield_both_cube : Two fields, both cube"""
10-Jul-2019 13:16:43            self.prepData("refim_twopoints_twochan.ms")
10-Jul-2019 13:16:43 @@ -736,7 +848,10 @@ class test_multifield(testref_base):
10-Jul-2019 13:16:43            ret={}
10-Jul-2019 13:16:43            if self.parallel:
10-Jul-2019 13:16:43              ret=self.th.mergeParaCubeResults(retpar, ['iterdone', 'nmajordone'])
10-Jul-2019 13:16:43 -            iterdone_expected=46
10-Jul-2019 13:16:43 +            if self.nnode < 2:
10-Jul-2019 13:16:43 +              iterdone_expected=42  # single server case = serial
10-Jul-2019 13:16:43 +            else:
10-Jul-2019 13:16:43 +              iterdone_expected=46
10-Jul-2019 13:16:43            else:
10-Jul-2019 13:16:43              iterdone_expected=42
10-Jul-2019 13:16:43              ret=retpar
10-Jul-2019 13:16:43 @@ -1978,7 +2093,8 @@ class test_mask(testref_base):
10-Jul-2019 13:16:43            report=self.th.checkall(imexist=[self.img+'1.mask', self.img+'2.mask'], imval=[(self.img+'1.mask',0.0,[50,50,0,1]),(self.img+'1.mask',1.0,[50,50,0,2]),(self.img+'1.mask',1.0,[50,50,0,10]),(self.img+'1.mask',0.0,[50,50,0,11]),(self.img+'2.mask',1.0,[50,50,0,0]),(self.img+'2.mask',1.0,[50,50,0,4]),(self.img+'2.mask',0.0,[50,50,0,10])])
10-Jul-2019 13:16:43            self.checkfinal(report)
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 -     @unittest.skipIf(ParallelTaskHelper.isMPIEnabled(), "Skip the test temporarily for 5.5")
10-Jul-2019 13:16:43 +     #@unittest.skipIf(ParallelTaskHelper.isMPIEnabled(), "Skip the test temporarily for 5.5")
10-Jul-2019 13:16:43 +     # parallel mode issue was fixed in imageanalysis 2019.05.23
10-Jul-2019 13:16:43       def test_mask_5(self):
10-Jul-2019 13:16:43            """ [mask] test_mask_5 : Input cube mask that has different chan
10-Jul-2019 13:16:43            ranges (use mask from the 1st tclean with a different channel range in the 2nd tclean run)"""
10-Jul-2019 13:16:43 @@ -2550,6 +2666,16 @@ class test_widefield(testref_base):
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43            #do stokes V too..
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 +     @unittest.skipIf(ParallelTaskHelper.isMPIEnabled(), "Skip test. mosaic, Briggs weighting with mosweight=True. Enable this after fixing CAS-11978")
10-Jul-2019 13:16:43 +     def test_widefield_mosaicft_mfs_mosweightTrue(self):
10-Jul-2019 13:16:43 +          """ [widefield] Test_Widefield_mosaic : MFS with mosaicft  stokes I briggs mosweight=True(default)"""
10-Jul-2019 13:16:43 +          self.prepData("refim_mawproject.ms")
10-Jul-2019 13:16:43 +          ret = tclean(vis=self.msfile,spw='1',field='*',imagename=self.img,imsize=512,cell='10.0arcsec',phasecenter="J2000 19:59:28.500 +40.44.01.50",
10-Jul-2019 13:16:43 +                       niter=30,gridder='mosaicft',deconvolver='hogbom',pblimit=0.3,weighting='briggs', parallel=self.parallel)
10-Jul-2019 13:16:43 +          report=self.th.checkall(imexist=[self.img+'.image', self.img+'.psf', self.img+'.weight'],imval=[(self.img+'.image',0.962813, [256,256,0,0]),(self.img+'.weight',0.50520, [256,256,0,0]) ] )
10-Jul-2019 13:16:43 +          #ret = clean(vis=self.msfile,spw='1',field='*',imagename=self.img+'.old',imsize=512,cell='10.0arcsec',phasecenter="J2000 19:59:28.500 +40.44.01.50",niter=30,imagermode='mosaic',psfmode='hogbom')
10-Jul-2019 13:16:43 +          self.checkfinal(report)
10-Jul-2019 13:16:43 +
10-Jul-2019 13:16:43       def test_widefield_mosaicft_mtmfs(self):
10-Jul-2019 13:16:43            """ [widefield] Test_Widefield_mosaicft_mtmfs : MT-MFS with mosaicft  stokes I, alpha """
10-Jul-2019 13:16:43            self.prepData("refim_mawproject.ms")
10-Jul-2019 13:16:43 @@ -3416,7 +3542,7 @@ class test_mosaic_cube(testref_base):
10-Jul-2019 13:16:43            self.checkfinal(report1+report2+report3+report4)
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43       def test_cube_mosaic_cbFalse_mwTrue_twofield(self):
10-Jul-2019 13:16:43 -          self.prepData('refim_oneshiftpoint.mosaic. ms')
10-Jul-2019 13:16:43 +          self.prepData('refim_oneshiftpoint.mosaic.ms')
10-Jul-2019 13:16:43            phasecenter = ''
10-Jul-2019 13:16:43            field='0,1'
10-Jul-2019 13:16:43            tclean(vis=self.msfile, imagename=self.img,niter=0,specmode='cube',spw='*',imsize=1024, phasecenter=phasecenter,cell='10.0arcsec',gridder='mosaic',field=field, conjbeams=False, wbawp=True, psterm=False,pblimit=0.1,reffreq='1.5GHz',pbcor=True,mosweight=True,parallel=self.parallel)
10-Jul-2019 13:16:43 diff --git a/gcwrap/tasks/plotms.xml b/gcwrap/tasks/plotms.xml
10-Jul-2019 13:16:43 index 14482a4..49c46e8 100644
10-Jul-2019 13:16:43 --- a/gcwrap/tasks/plotms.xml
10-Jul-2019 13:16:43 +++ b/gcwrap/tasks/plotms.xml
10-Jul-2019 13:16:43 @@ -1188,6 +1188,11 @@ Export plot as image Parameters
10-Jul-2019 13:16:43          <value>False</value>
10-Jul-2019 13:16:43       </param>
10-Jul-2019 13:16:43      
10-Jul-2019 13:16:43 +     <param type="bool" name="showimage">
10-Jul-2019 13:16:43 +        <description>Compute and overlay the image sideband curve</description>
10-Jul-2019 13:16:43 +        <value>False</value>
10-Jul-2019 13:16:43 +     </param>
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 <!--
10-Jul-2019 13:16:43 ###############################################################################
10-Jul-2019 13:16:43 Plotxy Compliance Parameters
10-Jul-2019 13:16:43 diff --git a/gcwrap/tasks/tclean.xml b/gcwrap/tasks/tclean.xml
10-Jul-2019 13:16:43 index 59746c5..3b4e9c5 100644
10-Jul-2019 13:16:43 --- a/gcwrap/tasks/tclean.xml
10-Jul-2019 13:16:43 +++ b/gcwrap/tasks/tclean.xml
10-Jul-2019 13:16:43 @@ -351,7 +351,7 @@ file:///opt/casa/code/xmlcasa/xml/casa.xsd">
10-Jul-2019 13:16:43      </param>
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43      <param type="string" name="projection" > <!-- subparam="true"> -->
10-Jul-2019 13:16:43 -     <shortdescription>Coordinate projection (SIN, HPX)</shortdescription>
10-Jul-2019 13:16:43 +     <shortdescription>Coordinate projection </shortdescription>
10-Jul-2019 13:16:43 <description>Coordinate projection
10-Jul-2019 13:16:43                       Examples : SIN,   NCP
10-Jul-2019 13:16:43                       A list of supported (but untested) projections can be found here :
10-Jul-2019 13:16:43 @@ -668,13 +668,14 @@ HPX HEALPix grid.  -->
10-Jul-2019 13:16:43                           When calculating weight density for Briggs
10-Jul-2019 13:16:43                           style weighting in a cube, this parameter
10-Jul-2019 13:16:43                           determines whether to calculate the weight
10-Jul-2019 13:16:43 -                         density for each channel independently or a
10-Jul-2019 13:16:43 -                         common weight density for all of the selected
10-Jul-2019 13:16:43 -                         data (the default). This parameter has no
10-Jul-2019 13:16:43 +                         density for each channel independently
10-Jul-2019 13:16:43 +                         (the default, True)
10-Jul-2019 13:16:43 +                         or a common weight density for all of the selected
10-Jul-2019 13:16:43 +                         data. This parameter has no
10-Jul-2019 13:16:43                           meaning for continuum (specmode='mfs')
10-Jul-2019 13:16:43                           imaging but for cube imaging
10-Jul-2019 13:16:43                           perchanweightdensity=True is a recommended
10-Jul-2019 13:16:43 -                         alternative option that provides more uniform
10-Jul-2019 13:16:43 +                         option that provides more uniform
10-Jul-2019 13:16:43                           sensitivity per channel for cubes, but with
10-Jul-2019 13:16:43                           generally larger psfs than the
10-Jul-2019 13:16:43                           perchanweightdensity=False (prior behavior)
10-Jul-2019 13:16:43 @@ -713,7 +714,7 @@ HPX HEALPix grid.  -->
10-Jul-2019 13:16:43                           across the concatenated cube.
10-Jul-2019 13:16:43              
10-Jul-2019 13:16:43 </description>
10-Jul-2019 13:16:43 -      <value type="bool">False</value>
10-Jul-2019 13:16:43 +      <value type="bool">True</value>
10-Jul-2019 13:16:43      </param>
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 <!--============================================== -->
10-Jul-2019 13:16:43 @@ -1095,9 +1096,9 @@ HPX HEALPix grid.  -->
10-Jul-2019 13:16:43        <value type="string"></value>
10-Jul-2019 13:16:43      </param>
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 -    <param type="bool" name="dopointing" subparam="true">
10-Jul-2019 13:16:43 +    <param type="bool" name="usepointing" subparam="true">
10-Jul-2019 13:16:43       <shortdescription>The parameter makes the gridder utilize the pointing table phase directions while computing the residual image.</shortdescription>
10-Jul-2019 13:16:43 -<description>The dopointing flag informs the gridder that it should utilize the pointing table
10-Jul-2019 13:16:43 +<description>The usepointing flag informs the gridder that it should utilize the pointing table
10-Jul-2019 13:16:43 to use the correct direction in which the antenna is pointing with respect to the pointing phasecenter. </description>
10-Jul-2019 13:16:43        <value type="bool">False</value>
10-Jul-2019 13:16:43      </param>
10-Jul-2019 13:16:43 @@ -2603,7 +2604,7 @@ to use the correct direction in which the antenna is pointing with respect to th
10-Jul-2019 13:16:43           <default param="restfreq"><value>[]</value></default>
10-Jul-2019 13:16:43           <default param="interpolation"><value>"linear"</value></default>
10-Jul-2019 13:16:43           <default param="chanchunks"><value>1</value></default>
10-Jul-2019 13:16:43 -         <default param="perchanweightdensity"><value>False</value></default>
10-Jul-2019 13:16:43 +         <default param="perchanweightdensity"><value>True</value></default>
10-Jul-2019 13:16:43         </equals>
10-Jul-2019 13:16:43         <equals type="string" value="cubesource">
10-Jul-2019 13:16:43           <default param="nchan"><value>-1</value></default>
10-Jul-2019 13:16:43 @@ -2614,7 +2615,7 @@ to use the correct direction in which the antenna is pointing with respect to th
10-Jul-2019 13:16:43           <default param="restfreq"><value>[]</value></default>
10-Jul-2019 13:16:43           <default param="interpolation"><value>"linear"</value></default>
10-Jul-2019 13:16:43           <default param="chanchunks"><value>1</value></default>
10-Jul-2019 13:16:43 -         <default param="perchanweightdensity"><value>False</value></default>
10-Jul-2019 13:16:43 +         <default param="perchanweightdensity"><value>True</value></default>
10-Jul-2019 13:16:43         </equals>
10-Jul-2019 13:16:43        
10-Jul-2019 13:16:43         <equals type="string" value="cubedata">
10-Jul-2019 13:16:43 @@ -2653,7 +2654,7 @@ to use the correct direction in which the antenna is pointing with respect to th
10-Jul-2019 13:16:43         <equals type="string" value="mosaic">
10-Jul-2019 13:16:43           <default param="normtype"><value>"flatnoise"</value></default>
10-Jul-2019 13:16:43           <default param="vptable"><value>""</value></default>
10-Jul-2019 13:16:43 -         <default param="dopointing"><value>False</value></default>
10-Jul-2019 13:16:43 +         <default param="usepointing"><value>False</value></default>
10-Jul-2019 13:16:43           <default param="mosweight"><value>True</value></default>
10-Jul-2019 13:16:43           <default param="pblimit"><value>0.2</value></default>
10-Jul-2019 13:16:43           <default param="conjbeams"><value>False</value></default>
10-Jul-2019 13:16:43 @@ -2662,7 +2663,7 @@ to use the correct direction in which the antenna is pointing with respect to th
10-Jul-2019 13:16:43         <equals type="string" value="mosaicft">
10-Jul-2019 13:16:43           <default param="normtype"><value>"flatnoise"</value></default>
10-Jul-2019 13:16:43           <default param="vptable"><value>""</value></default>
10-Jul-2019 13:16:43 -         <default param="dopointing"><value>False</value></default>
10-Jul-2019 13:16:43 +         <default param="usepointing"><value>False</value></default>
10-Jul-2019 13:16:43           <default param="doweight"><value>True</value></default>
10-Jul-2019 13:16:43           <default param="pblimit"><value>0.2</value></default>
10-Jul-2019 13:16:43           <default param="conjbeams"><value>False</value></default>
10-Jul-2019 13:16:43 @@ -2671,7 +2672,7 @@ to use the correct direction in which the antenna is pointing with respect to th
10-Jul-2019 13:16:43         <equals type="string" value="ftmosaic">
10-Jul-2019 13:16:43           <default param="normtype"><value>"flatnoise"</value></default>
10-Jul-2019 13:16:43           <default param="vptable"><value>""</value></default>
10-Jul-2019 13:16:43 -         <default param="dopointing"><value>False</value></default>
10-Jul-2019 13:16:43 +         <default param="usepointing"><value>False</value></default>
10-Jul-2019 13:16:43           <default param="mosweight"><value>True</value></default>
10-Jul-2019 13:16:43           <default param="pblimit"><value>0.2</value></default>
10-Jul-2019 13:16:43         </equals>
10-Jul-2019 13:16:43 @@ -2696,7 +2697,7 @@ to use the correct direction in which the antenna is pointing with respect to th
10-Jul-2019 13:16:43          <default param="pblimit"><value>0.2</value></default>
10-Jul-2019 13:16:43          <default param="conjbeams"><value>False</value></default>
10-Jul-2019 13:16:43          <default param="mosweight"><value>False</value></default>
10-Jul-2019 13:16:43 -         <default param="dopointing"><value>False</value></default>
10-Jul-2019 13:16:43 +         <default param="usepointing"><value>False</value></default>
10-Jul-2019 13:16:43         </equals>
10-Jul-2019 13:16:43         <equals type="string" value="awprojectft">
10-Jul-2019 13:16:43          <default param="wprojplanes"><value>1</value></default>
10-Jul-2019 13:16:43 @@ -2712,7 +2713,7 @@ to use the correct direction in which the antenna is pointing with respect to th
10-Jul-2019 13:16:43 <!--         <default param="vptable"><value>""</value></default> -->
10-Jul-2019 13:16:43          <default param="pblimit"><value>0.2</value></default>
10-Jul-2019 13:16:43          <default param="conjbeams"><value>False</value></default>
10-Jul-2019 13:16:43 -         <default param="dopointing"><value>False</value></default>
10-Jul-2019 13:16:43 +         <default param="usepointing"><value>False</value></default>
10-Jul-2019 13:16:43         </equals>
10-Jul-2019 13:16:43       </when>
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 diff --git a/gcwrap/tools/calanalysis/calanalysis_cmpt.cc b/gcwrap/tools/calanalysis/calanalysis_cmpt.cc
10-Jul-2019 13:16:43 index 6cde3ef..9c67944 100644
10-Jul-2019 13:16:43 --- a/gcwrap/tools/calanalysis/calanalysis_cmpt.cc
10-Jul-2019 13:16:43 +++ b/gcwrap/tools/calanalysis/calanalysis_cmpt.cc
10-Jul-2019 13:16:43 @@ -1221,7 +1221,7 @@ Bool calanalysis::parseSPW( const ::casac::variant& spw,
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43      oChannel.resize( uiNumSPW );
10-Jul-2019 13:16:43      for ( uInt s=0; s<uiNumSPW; s++ ) {
10-Jul-2019 13:16:43 -      oChannel[s] = CalAnalysis::unique<uInt>( oChannelTemp[s] );
10-Jul-2019 13:16:43 +      CalAnalysis::unique<uInt>( oChannelTemp[s], oChannel[s] );
10-Jul-2019 13:16:43      }
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43    }
10-Jul-2019 13:16:43 @@ -1303,7 +1303,7 @@ Bool calanalysis::parseFeed( const ::casac::variant& feed,
10-Jul-2019 13:16:43      delete [] aoFeed;
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43      oFeed.resize();
10-Jul-2019 13:16:43 -    oFeed = CalAnalysis::unique<String>( oFeedTemp );
10-Jul-2019 13:16:43 +    CalAnalysis::unique<String>( oFeedTemp, oFeed );
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43      if ( oFeed.nelements() != 1 && oFeed.nelements() != 2 ) {
10-Jul-2019 13:16:43        oFeed.resize();
10-Jul-2019 13:16:43 diff --git a/gcwrap/tools/plotms/plotms.xml b/gcwrap/tools/plotms/plotms.xml
10-Jul-2019 13:16:43 index 7ecd2e5..2c35d96 100644
10-Jul-2019 13:16:43 --- a/gcwrap/tools/plotms/plotms.xml
10-Jul-2019 13:16:43 +++ b/gcwrap/tools/plotms/plotms.xml
10-Jul-2019 13:16:43 @@ -1435,11 +1435,11 @@ called.
10-Jul-2019 13:16:43    <returns />   
10-Jul-2019 13:16:43 </method>
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 -<method type="function" name="setShowAtm">
10-Jul-2019 13:16:43 -  <keyword>setShowAtm</keyword>
10-Jul-2019 13:16:43 -  <shortdescription>Whether to overlay the atmospheric curve.</shortdescription>
10-Jul-2019 13:16:43 +<method type="function" name="setShowCurve">
10-Jul-2019 13:16:43 +  <keyword>setShowCurve</keyword>
10-Jul-2019 13:16:43 +  <shortdescription>Whether to overlay the atm, tsky, and image curves.</shortdescription>
10-Jul-2019 13:16:43    <description>
10-Jul-2019 13:16:43 -Request that the atmospheric transmission curve is calculateda and overplotted.
10-Jul-2019 13:16:43 +Request that the atmospheric or sky temperature transmission curve is calculated and overplotted.  Optionally display the image sideband curve.
10-Jul-2019 13:16:43 If updateImmediately is true, this change takes effect immediately IF the
10-Jul-2019 13:16:43 plotms window is currently shown; otherwise it will only be applied next time
10-Jul-2019 13:16:43 update() and/or show() is called.
10-Jul-2019 13:16:43 @@ -1449,6 +1449,14 @@ update() and/or show() is called.
10-Jul-2019 13:16:43        <description>whether to plot atm curve</description>
10-Jul-2019 13:16:43        <value>false</value>
10-Jul-2019 13:16:43      </param>
10-Jul-2019 13:16:43 +    <param type="bool" name="showtsky">
10-Jul-2019 13:16:43 +      <description>whether to plot tsky curve</description>
10-Jul-2019 13:16:43 +      <value>false</value>
10-Jul-2019 13:16:43 +    </param>
10-Jul-2019 13:16:43 +    <param type="bool" name="showimage">
10-Jul-2019 13:16:43 +      <description>whether to plot image sideband curve</description>
10-Jul-2019 13:16:43 +      <value>false</value>
10-Jul-2019 13:16:43 +    </param>
10-Jul-2019 13:16:43      <param type="bool" name="updateImmediately">
10-Jul-2019 13:16:43        <description>whether to apply this change immediately, IF the window is currently shown</description>
10-Jul-2019 13:16:43        <value>true</value>
10-Jul-2019 13:16:43 @@ -1478,36 +1486,25 @@ update() and/or show() is called.
10-Jul-2019 13:16:43    </returns>
10-Jul-2019 13:16:43 </method>
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 -<method type="function" name="setShowTsky">
10-Jul-2019 13:16:43 -  <keyword>setShowTsky</keyword>
10-Jul-2019 13:16:43 -  <shortdescription>Whether to overlay the sky temperature curve.</shortdescription>
10-Jul-2019 13:16:43 -  <description>
10-Jul-2019 13:16:43 -Request that the sky temperature curve is calculated and overplotted.  If
10-Jul-2019 13:16:43 -updateImmediately is true, this change takes effect immediately IF the plotms
10-Jul-2019 13:16:43 -window is currently shown; otherwise it will only be applied next time update()
10-Jul-2019 13:16:43 -and/or show() is called.
10-Jul-2019 13:16:43 -  </description>
10-Jul-2019 13:16:43 +<method type="function" name="getShowTsky">
10-Jul-2019 13:16:43 +  <keyword>getShowTsky</keyword>
10-Jul-2019 13:16:43 +  <shortdescription>Get whether tsky curve is overlaid</shortdescription>
10-Jul-2019 13:16:43 +  <description />
10-Jul-2019 13:16:43    <input>
10-Jul-2019 13:16:43 -    <param type="bool" name="showtsky">
10-Jul-2019 13:16:43 -      <description>whether to plot tsky curve</description>
10-Jul-2019 13:16:43 -      <value>false</value>
10-Jul-2019 13:16:43 -    </param>
10-Jul-2019 13:16:43 -    <param type="bool" name="updateImmediately">
10-Jul-2019 13:16:43 -      <description>whether to apply this change immediately, IF the window is currently shown</description>
10-Jul-2019 13:16:43 -      <value>true</value>
10-Jul-2019 13:16:43 -    </param>
10-Jul-2019 13:16:43      <param type="int" name="plotIndex">
10-Jul-2019 13:16:43        <description>Index of the plot (0-based).</description>
10-Jul-2019 13:16:43        <value>0</value>
10-Jul-2019 13:16:43      </param>
10-Jul-2019 13:16:43 -  </input>
10-Jul-2019 13:16:43 +  </input> 
10-Jul-2019 13:16:43    <example />
10-Jul-2019 13:16:43 -  <returns />
10-Jul-2019 13:16:43 +  <returns type="bool">
10-Jul-2019 13:16:43 +    <description>showtsky flag</description>
10-Jul-2019 13:16:43 +  </returns>
10-Jul-2019 13:16:43 </method>
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 -<method type="function" name="getShowTsky">
10-Jul-2019 13:16:43 -  <keyword>getShowTsky</keyword>
10-Jul-2019 13:16:43 -  <shortdescription>Get whether tsky curve is overlaid</shortdescription>
10-Jul-2019 13:16:43 +<method type="function" name="getShowImage">
10-Jul-2019 13:16:43 +  <keyword>getShowImage</keyword>
10-Jul-2019 13:16:43 +  <shortdescription>Get whether image sideband curve is overlaid</shortdescription>
10-Jul-2019 13:16:43    <description />
10-Jul-2019 13:16:43    <input>
10-Jul-2019 13:16:43      <param type="int" name="plotIndex">
10-Jul-2019 13:16:43 @@ -1517,7 +1514,7 @@ and/or show() is called.
10-Jul-2019 13:16:43    </input> 
10-Jul-2019 13:16:43    <example />
10-Jul-2019 13:16:43    <returns type="bool">
10-Jul-2019 13:16:43 -    <description>showtsky flag</description>
10-Jul-2019 13:16:43 +    <description>showimage flag</description>
10-Jul-2019 13:16:43    </returns>
10-Jul-2019 13:16:43 </method>
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 diff --git a/gcwrap/tools/plotms/plotms_cmpt.cc b/gcwrap/tools/plotms/plotms_cmpt.cc
10-Jul-2019 13:16:43 index 99a796c..b68ef59 100644
10-Jul-2019 13:16:43 --- a/gcwrap/tools/plotms/plotms_cmpt.cc
10-Jul-2019 13:16:43 +++ b/gcwrap/tools/plotms/plotms_cmpt.cc
10-Jul-2019 13:16:43 @@ -690,11 +690,13 @@ void plotms::setPlotAxes(const string& xAxis, const string& yAxis,
10-Jul-2019 13:16:43              PlotMSDBusApp::METHOD_SETPLOTPARAMS, params, /*true*/asyncCall);
10-Jul-2019 13:16:43 }
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 -void plotms::setShowAtm(const bool showatm, const bool updateImmediately, const int plotIndex)
10-Jul-2019 13:16:43 +void plotms::setShowCurve(const bool showatm, const bool showtsky, const bool showimage, const bool updateImmediately, const int plotIndex)
10-Jul-2019 13:16:43 {
10-Jul-2019 13:16:43      launchApp();
10-Jul-2019 13:16:43      Record params;
10-Jul-2019 13:16:43      params.define(PlotMSDBusApp::PARAM_SHOWATM, showatm);
10-Jul-2019 13:16:43 +    params.define(PlotMSDBusApp::PARAM_SHOWTSKY, showtsky);
10-Jul-2019 13:16:43 +    params.define(PlotMSDBusApp::PARAM_SHOWIMAGE, showimage);
10-Jul-2019 13:16:43      params.define(PlotMSDBusApp::PARAM_UPDATEIMMEDIATELY, updateImmediately);
10-Jul-2019 13:16:43      params.define(PlotMSDBusApp::PARAM_PLOTINDEX, plotIndex);
10-Jul-2019 13:16:43      QtDBusXmlApp::dbusXmlCallNoRet(dbus::FROM_NAME, app.dbusName( ),
10-Jul-2019 13:16:43 @@ -707,21 +709,16 @@ bool plotms::getShowAtm(const int plotIndex)
10-Jul-2019 13:16:43      GETSINGLEPLOTBOOL(SHOWATM)
10-Jul-2019 13:16:43 }
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 -void plotms::setShowTsky(const bool showtsky, const bool updateImmediately, const int plotIndex)
10-Jul-2019 13:16:43 +bool plotms::getShowTsky(const int plotIndex)
10-Jul-2019 13:16:43 {
10-Jul-2019 13:16:43      launchApp();
10-Jul-2019 13:16:43 -    Record params;
10-Jul-2019 13:16:43 -    params.define(PlotMSDBusApp::PARAM_SHOWTSKY, showtsky);
10-Jul-2019 13:16:43 -    params.define(PlotMSDBusApp::PARAM_UPDATEIMMEDIATELY, updateImmediately);
10-Jul-2019 13:16:43 -    params.define(PlotMSDBusApp::PARAM_PLOTINDEX, plotIndex);
10-Jul-2019 13:16:43 -    QtDBusXmlApp::dbusXmlCallNoRet(dbus::FROM_NAME, app.dbusName( ),
10-Jul-2019 13:16:43 -         PlotMSDBusApp::METHOD_SETPLOTPARAMS, params, /*true*/asyncCall);
10-Jul-2019 13:16:43 +    GETSINGLEPLOTBOOL(SHOWTSKY)
10-Jul-2019 13:16:43 }
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 -bool plotms::getShowTsky(const int plotIndex)
10-Jul-2019 13:16:43 +bool plotms::getShowImage(const int plotIndex)
10-Jul-2019 13:16:43 {
10-Jul-2019 13:16:43      launchApp();
10-Jul-2019 13:16:43 -    GETSINGLEPLOTBOOL(SHOWTSKY)
10-Jul-2019 13:16:43 +    GETSINGLEPLOTBOOL(SHOWIMAGE)
10-Jul-2019 13:16:43 }
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 string plotms::getPlotXAxis(const int plotIndex)
10-Jul-2019 13:16:43 diff --git a/gcwrap/tools/synthesis/synthesisimager_cmpt.cc b/gcwrap/tools/synthesis/synthesisimager_cmpt.cc
10-Jul-2019 13:16:43 index e93ca86..90075ba 100644
10-Jul-2019 13:16:43 --- a/gcwrap/tools/synthesis/synthesisimager_cmpt.cc
10-Jul-2019 13:16:43 +++ b/gcwrap/tools/synthesis/synthesisimager_cmpt.cc
10-Jul-2019 13:16:43 @@ -245,7 +245,7 @@ bool synthesisimager::defineimage(const casac::record& impars, const casac::reco
10-Jul-2019 13:16:43                             gpars.padding, gpars.useAutoCorr, gpars.useDoublePrec, gpars.wprojplanes,
10-Jul-2019 13:16:43                             gpars.convFunc, ipars.startModel, gpars.aTermOn,
10-Jul-2019 13:16:43                             gpars.psTermOn, gpars.mTermOn, gpars.wbAWP, gpars.cfCache,
10-Jul-2019 13:16:43 -                            gpars.doPointing,gpars.doPBCorr,gpars.conjBeams,
10-Jul-2019 13:16:43 +                            gpars.usePointing,gpars.doPBCorr,gpars.conjBeams,
10-Jul-2019 13:16:43                             gpars.computePAStep,gpars.rotatePAStep);
10-Jul-2019 13:16:43      */
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 @@ -290,7 +290,7 @@ synthesisimager::setimage(const std::string& imagename,
10-Jul-2019 13:16:43                              const bool mterm,//    = false,
10-Jul-2019 13:16:43                              const bool wbawp,//      = true,
10-Jul-2019 13:16:43                              const std::string& cfcache,//  = "",
10-Jul-2019 13:16:43 -                             const bool dopointing,// = false,
10-Jul-2019 13:16:43 +                             const bool usepointing,// = false,
10-Jul-2019 13:16:43                              const bool dopbcorr,//   = true,
10-Jul-2019 13:16:43                              const bool conjbeams,//  = false,
10-Jul-2019 13:16:43                              const float computepastep,         //=360.0
10-Jul-2019 13:16:43 @@ -392,7 +392,7 @@ synthesisimager::setimage(const std::string& imagename,
10-Jul-2019 13:16:43                               ntaylorterms, refFreq,
10-Jul-2019 13:16:43                               imageprojection, cdistance, freqframetype, tracksource, trackDir, overwrite,
10-Jul-2019 13:16:43                               padding, useautocorr, usedoubleprec, wprojplanes, convfunc, startmodel, aterm,
10-Jul-2019 13:16:43 -                              psterm, mterm,wbawp, cfcache,dopointing,dopbcorr,conjbeams,computepastep,rotatepastep);
10-Jul-2019 13:16:43 +                              psterm, mterm,wbawp, cfcache,usepointing,dopbcorr,conjbeams,computepastep,rotatepastep);
10-Jul-2019 13:16:43      }
10-Jul-2019 13:16:43    catch  (AipsError x)
10-Jul-2019 13:16:43      {
10-Jul-2019 13:16:43 diff --git a/gcwrap/tools/synthesis/vpmanager_cmpt.cc b/gcwrap/tools/synthesis/vpmanager_cmpt.cc
10-Jul-2019 13:16:43 index 1ff387b..aa7a1b2 100644
10-Jul-2019 13:16:43 --- a/gcwrap/tools/synthesis/vpmanager_cmpt.cc
10-Jul-2019 13:16:43 +++ b/gcwrap/tools/synthesis/vpmanager_cmpt.cc
10-Jul-2019 13:16:43 @@ -26,7 +26,7 @@
10-Jul-2019 13:16:43 #include <casa/Quanta/MVFrequency.h>
10-Jul-2019 13:16:43 #include <casa/Quanta/Quantum.h>
10-Jul-2019 13:16:43 #include <synthesis/MeasurementEquations/VPManager.h>
10-Jul-2019 13:16:43 -#include <imageanalysis/ImageAnalysis/AntennaResponses.h>
10-Jul-2019 13:16:43 +#include <synthesis/MeasurementEquations/AntennaResponses.h>
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 using namespace std;
10-Jul-2019 13:16:43 using namespace casacore;
10-Jul-2019 13:16:43 diff --git a/gcwrap/tools/tables/tableplot_cmpt.cc b/gcwrap/tools/tables/tableplot_cmpt.cc
10-Jul-2019 13:16:43 index 2d5ca07..4dd1f94 100644
10-Jul-2019 13:16:43 --- a/gcwrap/tools/tables/tableplot_cmpt.cc
10-Jul-2019 13:16:43 +++ b/gcwrap/tools/tables/tableplot_cmpt.cc
10-Jul-2019 13:16:43 @@ -149,7 +149,7 @@ tableplot::open(const std::vector<std::string>& tabnames)
10-Jul-2019 13:16:43                 if(adbg)cout << "nTabs : " << nTabs << endl;
10-Jul-2019 13:16:43         
10-Jul-2019 13:16:43                 /* Open tables and attach to internal list */
10-Jul-2019 13:16:43 -                if(TP->setTableS(TabNames,TabNames,SelStr)==-1) return false;
10-Jul-2019 13:16:43 +                if(! TP->setTableS(TabNames,TabNames,SelStr)) return false;
10-Jul-2019 13:16:43                 
10-Jul-2019 13:16:43                 /* Record the tables - for use in data selection later on */
10-Jul-2019 13:16:43                 TABS.resize(0);
10-Jul-2019 13:16:43 @@ -261,7 +261,7 @@ tableplot::selectdata(const std::string& taqlstring)
10-Jul-2019 13:16:43                 SelStr[i] = selectstring;
10-Jul-2019 13:16:43         }
10-Jul-2019 13:16:43         /* Attach selected tables to internal list */
10-Jul-2019 13:16:43 -        if(TP->setTableT(SelTABS,TabNames,SelStr)==-1) return false;
10-Jul-2019 13:16:43 +        if(! TP->setTableT(SelTABS,TabNames,SelStr)) return false;
10-Jul-2019 13:16:43         
10-Jul-2019 13:16:43         } catch (AipsError x) {
10-Jul-2019 13:16:43                 *itsLog << LogIO::SEVERE << "Exception Reported: " << x.getMesg() << LogIO::POST;
10-Jul-2019 13:16:43 @@ -387,7 +387,7 @@ tableplot::iterplotstart(const ::casac::record& poption, const std::vector<std::
10-Jul-2019 13:16:43         if(Errors[1].length()>0)cout<< Errors[1] <<endl;
10-Jul-2019 13:16:43         if(Errors[0].length()>0){cout<<"ERRORS :"<<Errors[0]<<endl;return false;}
10-Jul-2019 13:16:43         
10-Jul-2019 13:16:43 -        if(TP->iterMultiPlotStart(pop,temptaqlvector,tempiteraxes)==-1)
10-Jul-2019 13:16:43 +        if(! TP->iterMultiPlotStart(pop,temptaqlvector,tempiteraxes))
10-Jul-2019 13:16:43          return false;
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43          TP->changeGuiButtonState("iternext","enabled");
10-Jul-2019 13:16:43 @@ -452,7 +452,7 @@ tableplot::markregions(const int nrows, const int ncols, const int panel,const s
10-Jul-2019 13:16:43                 for(Int i=0;i<(Int)region.size();i++)
10-Jul-2019 13:16:43                         regionvec[i] = (Double)region[i];
10-Jul-2019 13:16:43                 
10-Jul-2019 13:16:43 -                if(TP->markRegions(nrows,ncols,panel,regionvec) == -1) return false;
10-Jul-2019 13:16:43 +                if(! TP->markRegions(nrows,ncols,panel,regionvec)) return false;
10-Jul-2019 13:16:43                 
10-Jul-2019 13:16:43         } catch (AipsError x) {
10-Jul-2019 13:16:43                 *itsLog << LogIO::SEVERE << "Exception Reported: " << x.getMesg() << LogIO::POST;
10-Jul-2019 13:16:43 @@ -530,7 +530,7 @@ tableplot::clearplot(const int nrows, const int ncols, const int panel)
10-Jul-2019 13:16:43 {
10-Jul-2019 13:16:43         if(adbg)cout << " Clear Plot " << endl;
10-Jul-2019 13:16:43         try {
10-Jul-2019 13:16:43 -                if(TP->clearPlot(nrows,ncols,panel) == -1) return false;
10-Jul-2019 13:16:43 +                if(! TP->clearPlot(nrows,ncols,panel)) return false;
10-Jul-2019 13:16:43         
10-Jul-2019 13:16:43         } catch (AipsError x) {
10-Jul-2019 13:16:43                 *itsLog << LogIO::SEVERE << "Exception Reported: " << x.getMesg() << LogIO::POST;
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 Comparison returned: 1
10-Jul-2019 13:16:43 Checkout: git checkout ARD-25-fix
10-Jul-2019 13:16:43 Already on 'ARD-25-fix'
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 [git, tag, -a, test-ARD-25-fix-6, -m 'Automatic tag']
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 Done tagging test-ARD-25-fix-6
10-Jul-2019 13:16:43 Pushing test-ARD-25-fix-6 to origin
10-Jul-2019 13:16:43 To ssh://git@open-bitbucket.nrao.edu:7999/casa/casa.git
10-Jul-2019 13:16:43 * [new tag]         test-ARD-25-fix-6 -> test-ARD-25-fix-6
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 Pushed test-ARD-25-fix-6 to origin
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 BUILD SUCCESSFUL
10-Jul-2019 13:16:43
10-Jul-2019 13:16:43 Total time: 9.075 secs
10-Jul-2019 13:16:44 Finished task 'Script' with result: Success
10-Jul-2019 13:16:44 Running post build plugin 'Docker Container Cleanup'
10-Jul-2019 13:16:44 Running post build plugin 'NCover Results Collector'
10-Jul-2019 13:16:44 Running post build plugin 'Clover Results Collector'
10-Jul-2019 13:16:44 Running post build plugin 'npm Cache Cleanup'
10-Jul-2019 13:16:44 Running post build plugin 'Artifact Copier'
10-Jul-2019 13:16:44 Finalising the build...
10-Jul-2019 13:16:44 Stopping timer.
10-Jul-2019 13:16:44 Build ARD-BPT22-TBFP-6 completed.
10-Jul-2019 13:16:44 Running on server: post build plugin 'NCover Results Collector'
10-Jul-2019 13:16:44 Running on server: post build plugin 'Build Hanging Detection Configuration'
10-Jul-2019 13:16:44 Running on server: post build plugin 'Clover Delta Calculator'
10-Jul-2019 13:16:44 Running on server: post build plugin 'Maven Dependencies Postprocessor'
10-Jul-2019 13:16:44 All post build plugins have finished
10-Jul-2019 13:16:44 Generating build results summary...
10-Jul-2019 13:16:44 Saving build results to disk...
10-Jul-2019 13:16:44 Logging substituted variables...
10-Jul-2019 13:16:44 Indexing build results...
10-Jul-2019 13:16:44 Finished building ARD-BPT22-TBFP-6.