~ubuntu-branches/ubuntu/wily/pyfits/wily-proposed

« back to all changes in this revision

Viewing changes to lib/pyfits/tests/test_nonstandard.py

  • Committer: Package Import Robot
  • Author(s): Aurelien Jarno
  • Date: 2013-12-07 16:18:48 UTC
  • mfrom: (1.1.11)
  • Revision ID: package-import@ubuntu.com-20131207161848-mcw0saz0iprjhbju
Tags: 1:3.2-1
* New upstream version.
* Bump Standards-Version to 3.9.5 (no changes).
* Remove build-depends on zlib1g-dev and remove patches/01-zlib.diff.
* Add build-depends on libcfitsio3-dev and add 
  patches/01-system-cfitsio.diff.
* Update debian/copyright.
* Install upstream changelog now that it is provided in the upstream
  tarball.
* Don't compress the binary packages with xz, it's no the dpkg's default.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
import pyfits
 
1
import numpy as np
 
2
 
 
3
import pyfits as fits
2
4
 
3
5
from pyfits.tests import PyfitsTestCase
4
6
 
5
 
from nose.tools import assert_equal, assert_true
6
 
 
7
7
 
8
8
class TestNonstandardHdus(PyfitsTestCase):
9
9
    def test_create_fitshdu(self):
20
20
 
21
21
        self._test_create_fitshdu(compression=True)
22
22
 
 
23
    def test_create_fitshdu_from_filename(self):
 
24
        """Regression test on `FitsHDU.fromfile`"""
 
25
 
 
26
        # Build up a simple test FITS file
 
27
        a = np.arange(100)
 
28
        phdu = fits.PrimaryHDU(data=a)
 
29
        phdu.header['TEST1'] = 'A'
 
30
        phdu.header['TEST2'] = 'B'
 
31
        imghdu = fits.ImageHDU(data=a + 1)
 
32
        phdu.header['TEST3'] = 'C'
 
33
        phdu.header['TEST4'] = 'D'
 
34
 
 
35
        hdul = fits.HDUList([phdu, imghdu])
 
36
        hdul.writeto(self.temp('test.fits'))
 
37
 
 
38
        fitshdu = fits.FitsHDU.fromfile(self.temp('test.fits'))
 
39
        hdul2 = fitshdu.hdulist
 
40
 
 
41
        assert len(hdul2) == 2
 
42
        assert fits.FITSDiff(hdul, hdul2).identical
 
43
 
23
44
    def _test_create_fitshdu(self, compression=False):
24
 
        hdul_orig = pyfits.open(self.data('test0.fits'),
25
 
                                do_not_scale_image_data=True)
 
45
        hdul_orig = fits.open(self.data('test0.fits'),
 
46
                              do_not_scale_image_data=True)
26
47
 
27
 
        fitshdu = pyfits.FitsHDU.fromhdulist(hdul_orig, compress=compression)
 
48
        fitshdu = fits.FitsHDU.fromhdulist(hdul_orig, compress=compression)
28
49
        # Just to be meta, let's append to the same hdulist that the fitshdu
29
50
        # encapuslates
30
51
        hdul_orig.append(fitshdu)
31
52
        hdul_orig.writeto(self.temp('tmp.fits'), clobber=True)
32
53
        del hdul_orig[-1]
33
54
 
34
 
        hdul = pyfits.open(self.temp('tmp.fits'))
35
 
        assert_true(isinstance(hdul[-1], pyfits.FitsHDU))
 
55
        hdul = fits.open(self.temp('tmp.fits'))
 
56
        assert isinstance(hdul[-1], fits.FitsHDU)
36
57
 
37
58
        wrapped = hdul[-1].hdulist
38
 
        assert_true(isinstance(wrapped, pyfits.HDUList))
 
59
        assert isinstance(wrapped, fits.HDUList)
39
60
 
40
 
        assert_equal(hdul_orig.info(output=False), wrapped.info(output=False))
41
 
        assert_true((hdul[1].data == wrapped[1].data).all())
42
 
        assert_true((hdul[2].data == wrapped[2].data).all())
43
 
        assert_true((hdul[3].data == wrapped[3].data).all())
44
 
        assert_true((hdul[4].data == wrapped[4].data).all())
 
61
        assert hdul_orig.info(output=False) == wrapped.info(output=False)
 
62
        assert (hdul[1].data == wrapped[1].data).all()
 
63
        assert (hdul[2].data == wrapped[2].data).all()
 
64
        assert (hdul[3].data == wrapped[3].data).all()
 
65
        assert (hdul[4].data == wrapped[4].data).all()