Hide keyboard shortcuts

Hot-keys on this page

r m x p   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

import unittest 

 

from lsst.sims.survey.fields import FieldsDatabase 

 

class TestFieldDatabase(unittest.TestCase): 

 

def setUp(self): 

self.fields_db = FieldsDatabase() 

self.query = "select * from Field limit 2;" 

 

def test_basic_information_after_creation(self): 

self.assertEqual(self.fields_db.db_name, "Fields.db") 

self.assertIsNotNone(self.fields_db.connect) 

 

def test_opsim3_userregions(self): 

result = self.fields_db.get_opsim3_userregions(self.query) 

truth_result = """userRegion = 0.00,-90.00,0.03 

userRegion = 180.00,-87.57,0.03""" 

self.assertEqual(result, truth_result) 

 

def test_get_ra_dec_arrays(self): 

ra, dec = self.fields_db.get_ra_dec_arrays(self.query) 

self.assertEqual(ra.size, 2) 

self.assertEqual(dec.size, 2) 

self.assertEqual(ra[1], 180.0) 

self.assertAlmostEqual(dec[1], -87.57, delta=1e-2) 

 

def test_get_id_ra_dec_arrays(self): 

fieldid, ra, dec = self.fields_db.get_id_ra_dec_arrays(self.query) 

self.assertEqual(ra[1], 180.0) 

self.assertEqual(fieldid[1], 2) 

self.assertNotEqual(fieldid[0], 0) 

self.assertAlmostEqual(dec[1], -87.57, delta=1e-2) 

 

def test_get_rows(self): 

rows = self.fields_db.get_rows(self.query) 

self.assertIsInstance(rows, list) 

self.assertEqual(len(rows), 2) 

self.assertEqual(len(rows[0]), 8) 

 

def test_get_field_set(self): 

field_set = self.fields_db.get_field_set(self.query) 

truth_set = set() 

truth_set.add((1, 3.5, 0.0, -90.0, -57.068082, -27.128251, 

-89.93121, -66.561358)) 

truth_set.add((2, 3.5, 180.0, -87.568555, -57.663825, -24.756541, 

-96.024547, -66.442665)) 

self.assertEqual(len(field_set), 2) 

self.assertSetEqual(field_set, truth_set) 

 

51 ↛ 52line 51 didn't jump to line 52, because the condition on line 51 was never trueif __name__ == '__main__': 

unittest.main()