Build: #18 failed
Job: Test Tools MPI Many Linux 2.28 Rocky 8.10 Py3.10 failed
advisechanelsel datasel: Test case result
The below summarizes the result of the test " advisechanelsel datasel" in build 18 of CASA - CMake MPI - Test Tools MPI Many Linux 2.28 Rocky 8.10 Py3.10.
- Description
- advisechanelsel datasel
- Test class
- tests.tools.synthesisutils.test_tool_synthesisutils.advisechansel_test
- Method
- test_advisechanelsel_datasel
- Duration
- < 1 sec
- Status
- Failed (New Failure)
Error Log
RuntimeError: Table twhya.short.ms/OBSERVATION does not exist
self = <test_tool_synthesisutils.advisechansel_test testMethod=test_advisechanelsel_datasel>
def test_advisechanelsel_datasel(self):
'''Test that data selection parameters or given frequency range, etc is returned correctly'''
# Run multiple tests with slightly different input but should yield identical results.
# First, try it in the data frame
su = synthesisutils()
inputms ='twhya.short.ms'
# start: Chan 500 of spw0, end: Chan 3840 of spw1
fsttopo = '356.55897119140625GHz'
fentopo = '358.2029418946312GHz'
cw = '122.070kHz'
res = su.advisechansel(freqstart=fsttopo,freqend=fentopo, freqstep=cw, freqframe='TOPO', fieldid=2, msname=inputms)
#print('res=',res)
# res['nchan'] = [3340, 3840], res['spw'] = [0,1], res['start']=[500,0]
refdict = {'nchan': numpy.array([3340, 3840]), 'spw': numpy.array([0, 1]), 'start': numpy.array([500, 0])}
(pof, errmsg) = self.checkdict(res,refdict, 'TOPO test')
# calculate input frequencies in LSRK in the time range for a specific source
> listoffreqs = self.topof_to_outframef(inputms, fsttopo, 'LSRK', 2)
../../../casatools/tests/tools/synthesisutils/test_tool_synthesisutils.py:388:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
../../../casatools/tests/tools/synthesisutils/test_tool_synthesisutils.py:136: in topof_to_outframef
self.tb.open(vis+'/OBSERVATION')
../../../../venv/lib/python3.10/site-packages/casatools/table.py:308: in open
return self._swigobj.open(tablename, lockoptions, nomodify)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <casatools.__casac__.table.table; proxy of <Swig Object of type 'casac::table *' at 0x7f35d9cf46f0> >
args = ('twhya.short.ms/OBSERVATION', {}, True), kwargs = {}
def open(self, *args, **kwargs):
"""
open(self, _tablename, _lockoptions, _nomodify) -> bool
Summary:
open an existing table
Description:
Opens a disk file containing an existing casa Table.
Most of the time you just need to specify the tablename and perhaps
nomodify.
A table can be shared by multiple processes by using the appropriate
locking options. The possible options are:
- auto: let the system take care of locking. At regular time
intervals these autolocks are released to give other processes the
opportunity to access the table.
- autonoread: as auto, but no read locking is needed. This must be
used with care, because it means that reading can be done while
the table tool is not synchronized with the table file (as is
normally done when a lock is acquired). The function texttt{resync}
can be used to explicitly synchronize the table tool
- user: the user takes care by explicit calls to lock and unlock
- usernoread: as user and the no readlocking behaviour of autonoread.
- permanent: use a permanent lock; the constructor fails when the table is
already in use in another process
- permanentwait: as above, but wait until the other process
releases its lock
- default: this is the default option.
If the given table is already open, the locking option in use is not
changed. Otherwise it reverts to auto.
When auto locking is used, it is possible to give a record containing
the fields option, interval, and/or maxwait. In this way advanced
users have full control over the locking options. In practice this is
hardly ever needed.
Input Parameters:
tablename
lockoptions locking dictionary to be used : dict keys are 'option', 'interval', 'maxwait'
nomodify
Example:
# First let's make a table for testing
def maketesttable():
# Get path to CASA home directory by stipping name from '$CASAPATH'
pathname=os.environ.get('CASAPATH').split()[0]
# This is where the 3C273XC1.fits data should be
fitsdata=pathname+'/data/demo/3C273XC1.fits'
# Remove old table if present
!rm -rf 3C273XC1.MS
ms.fromfits('3C273XC1.MS',fitsdata)
ms.close()
maketesttable()
tb.open('3C273XC1.MS')
tb.browse()
tb.close()
The first line opens an existing table 3C273XC1.MS, the second browses
it using the browse function.
tb.open('3C273XC1.MS', nomodify=False, lockoptions={'option':'user'})
tb.lock();
tb.addrows();
tb.unlock();
In this example explicit user locking is used. The function lock
is needed to acquire a (write) lock before the addrows is done.
Thereafter the lock is released to give other processes the chance
to operate on the table.
Note that releasing a lock implies flushing the table, so doing
that very often can be quite expensive.
--------------------------------------------------------------------------------
"""
> return _table.table_open(self, *args, **kwargs)
E RuntimeError: Table twhya.short.ms/OBSERVATION does not exist
../../../../venv/lib/python3.10/site-packages/casatools/__casac__/table.py:446: RuntimeError