def test_create(self): with self.assertRaises(IOError): s = Surface("File/does/not/exist") with self.assertRaises(ValueError): s = Surface(self.surface_short) with self.assertRaises(ValueError): s = Surface(self.surface_long) s = Surface( self.surface_valid ) self.assertEqual( s.getNX( ) , 49 ) self.assertEqual( s.getNY( ) , 79 ) self.assertEqual( len(s) , 49*79 ) with self.assertRaises(IndexError): v = s[49 * 79] with self.assertRaises(TypeError): v = s["KEY"] self.assertEqual( s[0] , 0.0051 ) self.assertEqual( s[-1] , -0.0014 ) with self.assertRaises(IndexError): s[49*79] = 787 s[0] = 10 self.assertEqual( s[0] , 10 ) s[-1] = 77 self.assertEqual( s[len(s) - 1] , 77 )
def test_create_new(self): with self.assertRaises(ValueError): s = Surface(None, 1, 1, 1) with self.assertRaises(IOError): s = Surface(50, 1, 1, 1) # values copied from irap surface_small ny,nx = 20,30 xinc,yinc = 50.0, 50.0 xstart,ystart = 463325.5625, 7336963.5 angle = -65.0 s_args = (None, nx, ny, xinc, yinc, xstart, ystart, angle) s = Surface(*s_args) self.assertEqual(ny*nx, len(s)) self.assertEqual(nx, s.getNX()) self.assertEqual(ny, s.getNY()) small = Surface (self.surface_small) self.assertTrue(small.headerEqual(s)) valid = Surface (self.surface_valid) self.assertFalse(valid.headerEqual(s)) self.assertNotEqual(s, small) idx = 0 for i in range(nx): for j in range(ny): s[idx] = small[idx] idx += 1 self.assertEqual(s, small)