Skip to content

Commit 67fc530

Browse files
committed
Added testing and templates to the imager action
1 parent 49c6313 commit 67fc530

File tree

5 files changed

+3028
-17
lines changed

5 files changed

+3028
-17
lines changed

factor/actions/imager.py

Lines changed: 27 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,31 +7,42 @@
77
from factor.lib.action import action
88
from factor.lib.action_lib import makeimagename
99

10+
from jinja2 import Environment, FileSystemLoader
11+
import os
12+
13+
14+
DIR = os.path.dirname(os.path.abspath(__file__))
15+
env = Environment(loader=FileSystemLoader(os.path.join(DIR, 'templates')))
16+
17+
1018
class imager(action):
1119
"""
12-
Implment the imager action
20+
Implement the imager action
1321
"""
1422

1523
def __init__(self, op_name, ms, prefix='', niter=None, imsize=None, cell=None, uvrange=None, mask=None, clean=True):
1624
super(imager, self).__init__(op_name, name = 'imager')
17-
self.ms = ms
18-
self.prefix = prefix
19-
self.niter = niter
20-
self.imsize = imsize
21-
self.cell = cell
22-
self.uvrange = uvrange
23-
self.mask = mask
25+
self.d = {"ms": ms,
26+
"prefix": prefix,
27+
"niter": niter,
28+
"imsize": imsize,
29+
"cell": cell,
30+
"uvrange": uvrange,
31+
"mask": mask,
32+
"clean": clean, # Do we need this here?
33+
"image": makeimagename(ms, prefix),
34+
}
2435
self.clean = clean
25-
self.image = makeimagename(ms, prefix)
26-
36+
37+
def _get_command(self):
38+
template_imager = env.get_template('imager.tpl')
39+
cmd = 'casapy --nologger --log2term -c %s' % template_imager.render(self.d)
40+
2741
def run(self):
28-
# TODO: implement the template
29-
template_imager = make_template(ms = self.ms, image = self.image, \
30-
niter = self.niter, imsize = self.imsize, cell = self.cell, uvrange = self.uvrange, mask = self.mask)
31-
cmd = 'casapy --nologger --log2term -c %s' % template_imager
32-
exec_cmd(cmd)
42+
exec_cmd(self.cmd)
3343

34-
if clean: os.system('rm -rf %s.mask %s.flux %s.psf' % (image, image, image))
44+
if clean:
45+
os.system('rm -rf %s.mask %s.flux %s.psf' % (image, image, image))
3546

3647
def get_results(self):
3748
"""

factor/actions/templates/imager.tpl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+

factor/actions/tests/test_imager.py

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
from __future__ import print_function
2+
import sys
3+
import unittest
4+
import traceback
5+
import os
6+
7+
# Append the path of the module to the syspath
8+
sys.path.append(os.path.join('..','..','..'))
9+
from factor.actions.imager import imager
10+
11+
class TestImager(unittest.TestCase):
12+
13+
def setUp(self):
14+
self.im = imager("op1", "test_ms")
15+
16+
def test_command(self):
17+
print(self.im._get_command())
18+
19+
if __name__ == '__main__':
20+
unittest.main()

0 commit comments

Comments
 (0)