1 | import sys |
---|
2 | import os |
---|
3 | import shutil |
---|
4 | import datetime |
---|
5 | from asap import scantable, selector, mask_not |
---|
6 | from asap.logging import asaplog |
---|
7 | asaplog.disable() |
---|
8 | |
---|
9 | from nose.tools import * |
---|
10 | from nose.plugins.skip import SkipTest |
---|
11 | |
---|
12 | def tempdir_setup(): |
---|
13 | os.makedirs("test_temp") |
---|
14 | |
---|
15 | def tempdir_teardown(): |
---|
16 | shutil.rmtree("test_temp", True) |
---|
17 | |
---|
18 | class TestNRO(object): |
---|
19 | def setup(self): |
---|
20 | s = scantable('data/B68test.nro', average=False, freqref='VREF') |
---|
21 | sel = selector() |
---|
22 | # make sure this order is always correct - it can be random |
---|
23 | sel.set_order(["SCANNO", "POLNO"]) |
---|
24 | s.set_selection(sel) |
---|
25 | self.st = s.copy() |
---|
26 | del s |
---|
27 | |
---|
28 | def tearDown(self): |
---|
29 | del self.st |
---|
30 | |
---|
31 | def test_init(self): |
---|
32 | assert_equal(self.st.nrow(), 36) |
---|
33 | assert_equal(self.st.get_fluxunit(), 'K') |
---|
34 | assert_equal(self.st.nchan(), 2048) |
---|
35 | assert_equal(self.st.nif(), 4) |
---|
36 | |
---|
37 | def test_spectrum(self): |
---|
38 | import numpy |
---|
39 | sp=numpy.array(self.st._getspectrum(0)) |
---|
40 | assert_equal(sp.max(),1.9524071216583252) |
---|
41 | assert_equal(sp.min(),-0.0071961274370551109) |
---|
42 | assert_equal(sp.argmax(),1648) |
---|
43 | assert_equal(sp.argmin(),1614) |
---|
44 | |
---|
45 | def test_stats(self): |
---|
46 | assert_equal(self.st.stats('rms')[0],1.1064267158508301) |
---|
47 | assert_equal(self.st.stats('stddev')[0],0.29552212357521057) |
---|
48 | assert_equal(self.st.stats('median')[0],1.0714811086654663) |
---|
49 | assert_equal(self.st.stats('mean')[0],1.0662506818771362) |
---|
50 | assert_equal(self.st.stats('sum')[0],2183.681396484375) |
---|
51 | |
---|
52 | |
---|
53 | def test_frequency(self): |
---|
54 | #raise SkipTest("Currently disabled") |
---|
55 | rf=self.st.get_restfreqs() |
---|
56 | assert_equal(len(rf),2) |
---|
57 | assert_equal(rf[0][0],85162157000.0) |
---|
58 | assert_equal(rf[1][0],86754330000.0) |
---|
59 | self.st.set_unit('GHz') |
---|
60 | abc=self.st._getabcissa(0) |
---|
61 | assert_almost_equal(abc[0],85.182400000256166,places=14) |
---|