source: branches/hpc34/test/test_selector.py@ 3000

Last change on this file since 3000 was 2481, checked in by Malte Marquarding, 13 years ago

Added and updated test scripts; e.g. hobart data

File size: 1.6 KB
Line 
1from nose.tools import *
2from asap.selector import selector
3
4
5# call constructor with args
6def constructor(d):
7 p = selector(**d)
8 for k, v in d.items():
9 meth = getattr(p, 'get_%s' % k)
10 val = v
11 if not hasattr(val, "__len__"):
12 val = [val]
13 assert_equals(meth(), val)
14
15# generator for constructor arguments
16def test_constructor_keys():
17 args = [ { 'rows': 0 },
18 { 'rows': [1,2]},
19 { 'ifs': 0 },
20 { 'ifs': [1,2]},
21 { 'beams': 0 },
22 { 'beams': [1,2] },
23 { 'pols': 0 },
24 { 'pols': range(4) },
25 { 'cycles': 0 },
26 { 'cycles': range(5) },
27 { 'scans': 0 },
28 { 'scans': range(5) },
29 { 'scans': range(5), 'beams': 0 },
30 ]
31 for arg in args:
32 yield constructor, arg
33
34def test_copy_constructor():
35 v = [0]
36 s = selector(ifs=v)
37 scpy = selector(s)
38 assert_equals(s.get_ifs(), scpy.get_ifs())
39 scpy.set_beams(v)
40 assert_not_equals(s.get_beams(), scpy.get_beams())
41
42
43def test_add():
44 v = [0]
45 s1 = selector(ifs=v)
46 s2 = selector(beams=v)
47 s3 = s1 + s2
48 assert_equals(s3.get_ifs(), v)
49 assert_equals(s3.get_beams(), v)
50 assert_not_equals(id(s3), id(s1))
51 assert_not_equals(id(s3), id(s2))
52
53def test_fields():
54 base = ['pols', 'ifs', 'beams', 'scans', 'cycles', 'name',
55 'query', 'types', 'rows']
56 assert_equals(selector.fields, base)
57
58def test_reset():
59 v = [0]
60 s = selector(ifs=v)
61 assert_equals(s.get_ifs(), v)
62 s.reset()
63 assert_true(s.is_empty())
64
Note: See TracBrowser for help on using the repository browser.