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

53

54

55

56

57

58

59

60

61

62

63

64

65

66

from __future__ import absolute_import, division, print_function 

import unittest 

 

import numpy as np 

from numpy.testing import assert_allclose 

 

import astshim as ast 

from astshim.test import MappingTestCase 

 

 

class TestTranMap(MappingTestCase): 

 

def test_TranMapNotSymmetric(self): 

zoomfac = 0.5 

unitMap = ast.UnitMap(2) 

zoomMap = ast.ZoomMap(2, zoomfac) 

tranmap = ast.TranMap(unitMap, zoomMap) 

# adding to a TranMap increases by 1 

self.assertEqual(unitMap.getRefCount(), 2) 

# adding to a TranMap increases by 1 

self.assertEqual(zoomMap.getRefCount(), 2) 

 

self.assertIsInstance(tranmap, ast.TranMap) 

self.assertIsInstance(tranmap, ast.Mapping) 

self.assertEqual(tranmap.nIn, 2) 

self.assertEqual(tranmap.nOut, 2) 

 

self.checkCopy(tranmap) 

 

indata = np.array([ 

[1.0, 2.0, -6.0, 30.0, 1.0], 

[3.0, 99.0, -5.0, 21.0, 0.0], 

], dtype=float) 

outdata = tranmap.applyForward(indata) 

assert_allclose(outdata, indata) 

outdata_roundtrip = tranmap.applyInverse(outdata) 

assert_allclose(indata, outdata_roundtrip * zoomfac) 

 

with self.assertRaises(AssertionError): 

self.checkRoundTrip(tranmap, indata) 

self.checkMappingPersistence(tranmap, indata) 

 

def test_TranMapSymmetric(self): 

zoomfac = 0.53 

tranmap = ast.TranMap(ast.ZoomMap( 

2, zoomfac), ast.ZoomMap(2, zoomfac)) 

self.assertIsInstance(tranmap, ast.TranMap) 

self.assertIsInstance(tranmap, ast.Mapping) 

self.assertEqual(tranmap.nIn, 2) 

self.assertEqual(tranmap.nOut, 2) 

 

self.checkCopy(tranmap) 

 

indata = np.array([ 

[1.0, 2.0, -6.0, 30.0, 1.0], 

[3.0, 99.0, -5.0, 21.0, 0.0], 

], dtype=float) 

outdata = tranmap.applyForward(indata) 

assert_allclose(outdata, indata * zoomfac) 

 

self.checkRoundTrip(tranmap, indata) 

self.checkMappingPersistence(tranmap, indata) 

 

 

65 ↛ 66line 65 didn't jump to line 66, because the condition on line 65 was never trueif __name__ == "__main__": 

unittest.main()