Пример #1
0
def test5():
    '''ASTRODATA-single-extfuncs TEST 5: rename_ext name, ver  
    '''
    print('\n\t* MEF testfile: %s' % sci123)
    ad = AstroData(sci123)
    print('\tad = AstroData(sci123)')
    ad[0].rename_ext('SPAM', 2)
    print('\tad[0].rename_ext("SPAM", 2)')
    eq_(2, ad[0].hdulist[1]._extver, msg='extver not 1')
    eq_('SPAM', ad[0].hdulist[1].name, msg='extname not SPAM')
Пример #2
0
def test6():
    '''ASTRODATA-single-extfuncs TEST 6: rename_ext with tuple  
    '''
    print('\n\t* MEF testfile: %s' % sci123)
    ad = AstroData(sci123)
    print('\tad = AstroData(sci123)')
    ad[0].rename_ext(('SCI', 10))
    print('\tad[0].rename_ext(("SCI", 10))')
    eq_(10, ad[0].hdulist[1]._extver, msg='extver not 1')
    eq_('SCI', ad[0].hdulist[1].name, msg='extname not SCI')
Пример #3
0
def test1():
    '''ASTRODATA-single-extfuncs TEST 1: get_data()  
    '''
    print('\n\t* single ext fits testfile: %s' % sci1)
    ad = AstroData(sci1)
    print('\tad = AstroData(sci1)')
    data = ad.get_data()
    print('\tdata = ad.get_data()')
    print('\tid(data) = %s' % str(id(data)))
    print('\tid(ad.data) = %s' % str(id(ad.data)))
    eq_(id(data), id(ad.data), msg='objects are different')
Пример #4
0
def test3():
    '''ASTRODATA-single-extfuncs TEST 3: get_header() (extension)  
    '''
    print('\n\t* single ext fits testfile: %s' % sci1)
    ad = AstroData(sci1)
    print('\tad = AstroData(sci1)')
    header = ad.get_header()
    print('\theader = ad.get_header)')
    print('\tid(header) = %s' % str(id(header)))
    print('\tid(ad[0].header) = %s' % str(id(ad[0].header)))
    eq_(id(header), id(ad[0].header), msg='objects are different')
Пример #5
0
def test4():
    '''ASTRODATA-single-extfuncs TEST 4: set_header()  
    '''
    print('\n\t* single ext fits testfile: %s' % sci1)
    hdulist = pyfits.open(sci1)
    print('\thdulist = pyfits.open(sci1)')
    ad = AstroData(sci123)
    print('\tad = AstroData(sci123)')
    ad[0].set_header(hdulist[1].header)
    print('\tad[0].set_header(hdulist[1].header)')
    eq_(ad[0].header, hdulist[1].header, msg='ext. header not set correctly')
Пример #6
0
def test2():
    '''ASTRODATA-single-extfuncs TEST 2: set_data()  
    '''
    print('\n\t* single ext fits testfile: %s' % sci1)
    ad = AstroData(sci1)
    print('\tad = AstroData(sci1)')
    a = array([1,2,3])
    print('\ta = array([1,2,3])')
    ad.set_data(a)
    print('\tad.set_data(a)')
    for i in range(len(ad)):
        eq_(ad.data[i], a[i], msg='array elements are different')
Пример #7
0
def test2():
    """
    ASTRODATA-deepcopy TEST 2: Orig attribute change does not affect copy (MEF)
    """
    ad = AstroData(sci123)
    adDeepcopy = deepcopy(ad)
    savedFilename = ad._AstroData__origFilename
    ad._AstroData__origFilename = "newfilename.fits"
    eq_(adDeepcopy._AstroData__origFilename, savedFilename,
            msg="The attribute _AstroData__origFilename has been altered in deepcopy")
    ad.close()
    adDeepcopy.close()
Пример #8
0
def test4():
    """
    ASTRODATA-deepcopy TEST 4: Orig attribute change does not affect copy (SEF)
    """
    ad = AstroData(sci1)
    adDeepcopy = deepcopy(ad)
    savedFilename = ad._AstroData__origFilename
    ad.mode = "update"
    ad._AstroData__origFilename = "newfilename.fits"
    eq_(adDeepcopy.mode, "readonly", msg="Deepcopy Failure, mode is not readonly")
    ad.close()
    adDeepcopy.close()
Пример #9
0
def test3():
    """ASTRODATA-inferred TEST 3: 'SCI' 1 if no XNAM found (SEF)"""
    testhdulist = pyfits.open(sci1)
    hlist = []
    alist = []
    for hdu in testhdulist[1:]:
        hlist.append(hdu.name)
    print("\n\n    HDUList EXTNAME: %s" % hlist)
    ad = AstroData(testhdulist)
    alist.append((ad[0].extname(), ad[0].extver()))
    eq_(ad[0].extname(), "SCI", msg="extname is not sci")
    eq_(ad[0].extver(), 1, msg="extver is incorrect")
    print("\n    AD (EXTNAME,EXTVER): %s" % alist)
    ad.close()
    testhdulist.close()
Пример #10
0
def test8():
    """ASTRODATA-append TEST 8: AUTO NUMBER, var2 to sci123"""
    ad1 = AstroData(sci123) 
    ad4 = AstroData(scivardq123) 
    print "\n             >>>>>>>     AD HOST    <<<<<<<<"
    ad1.info()
    print "\n             >>>>>>>    AD APPEND   <<<<<<<<"
    adsci = ad4['VAR', 2]
    print("adsci = ad4['VAR', 2]")
    ad1.append(header=adsci.header, data=adsci.data, auto_number=True)
    print "ad1.append(header=adsci.header, data=adsci.data, auto_number=True)"
    print "\n             >>>>>>>  AD HOST (NEW) <<<<<<<<"
    ad1.info()
    eq_(ad1[3].extname(), "VAR")
    eq_(ad1[3].extver(), 4)
Пример #11
0
def test7():
    """ASTRODATA-append TEST 7: AUTO NUMBER, sci1 to sci123"""
    ad1 = AstroData(sci123)
    ad4 = AstroData(scivardq123) 
    print "\n             >>>>>>>     AD HOST    <<<<<<<<"
    ad1.info()
    print "\n             >>>>>>>    AD APPEND   <<<<<<<<"
    adsci = ad4['SCI', 1]
    print("adsci = ad4['SCI', 1]")
    ad1.append(header=adsci.header, data=adsci.data, auto_number=True)
    print "ad1.append(header=adsci.header, data=adsci.data, auto_number=True)"
    print "\n             >>>>>>>  AD HOST (NEW) <<<<<<<<"
    ad1.info()
    eq_(ad1[3].hdulist[1].name, "SCI")
    eq_(ad1[3].extver(), 4)
Пример #12
0
def test8():
    """ASTRODATA-insert TEST 8: Increment XVER if XNAME unknown
    """
    ad1 = AstroData(sci123) 
    ad4 = AstroData(scivardq123) 
    print "\n             >>>>>>>     AD     <<<<<<<<"
    ad1.info()
    print "\n             >>>>>>>    AD insert   <<<<<<<<"
    adsci = ad4['VAR', 2]
    print("adsci = ad4['VAR', 2]")
    ad1.insert(index=0, header=adsci.header, data=adsci.data, auto_number=True)
    print "ad1.insert(index=0,header=adsci.header, data=adsci.data, auto_number=True)"
    print "\n             >>>>>>>  AD MODIFIED <<<<<<<<"
    ad1.info()
    eq_(ad1[0].extname(), "VAR")
    eq_(ad1[0].extver(), 4)
Пример #13
0
def test17():
    """ASTRODATA-insert TEST 17: AUTO NUMBER, MDF into MEF
    """
    ad3 = AstroData(mdfscivardq1) 
    ad1 = AstroData(sci123) 
    print "\n             >>>>>>>     AD     <<<<<<<<"
    ad1.info()
    print "\n             >>>>>>>    AD insert   <<<<<<<<"
    ad1.insert(index=0, header=ad3[0].header, data=ad3[0].data) 
    mystr = "ad1.insert(index=0, header=ad3[1].header, data=ad3[1].data,"
    mystr += " auto_number=True)" 
    print mystr
    print "\n             >>>>>>>  AD (MODIFIED) <<<<<<<<"
    ad1.info()
    eq_(ad1[0].extname(), "MDF")
    eq_(ad1[0].extver(), None)
Пример #14
0
def test4():
    """ASTRODATA-inferred TEST 4: Do not infer when XNAM found (SEF)
    """
    testhdulist = pyfits.open(sci1)
    testhdulist[1].name = "MARS"
    hlist = []
    alist = [] 
    for hdu in testhdulist[1:]:
        hlist.append(hdu.name)
    print("\n\n    HDUList EXTNAME: %s" % hlist)
    ad = AstroData(testhdulist) 
    alist.append((ad[0].extname(), ad[0].extver()))
    print("\n    AD (EXTNAME,EXTVER): %s" % alist)
    testhdulist.close()
    eq_(ad[0].extname(), 'MARS', msg="extname is not sci")
    eq_(ad[0].extver(), 1, msg="extver is incorrect")
Пример #15
0
def test7():
    """
    ASTRODATA-insert TEST 7: AUTO NUMBER, Incremnt XVER & latter indx if XNAME exists
    """
    ad1 = AstroData(sci123) 
    ad4 = AstroData(scivardq123) 
    print "\n             >>>>>>>     AD    <<<<<<<<"
    ad1.info()
    print "\n             >>>>>>>    AD insert   <<<<<<<<"
    adsci = ad4['SCI', 1]
    print("adsci = ad4['SCI', 1]")
    ad1.insert(index=1, header=adsci.header, data=adsci.data, auto_number=True)
    print "ad1.insert(index=1, header=adsci.header, data=adsci.data, auto_number=True)"
    print "\n             >>>>>>>  MODIFIED AD   <<<<<<<<"
    ad1.info()
    eq_(ad1[1].hdulist[1].name, "SCI")
    eq_(ad1[1].extver(), 4)
Пример #16
0
def test16():
    """ASTRODATA-append TEST 16: AUTO NUMBER MDF
    """
    ad3 = AstroData(mdfscivardq1) 
    print "\n             >>>>>>>     AD NEW    <<<<<<<<"
    ad_new = AstroData(phu=ad3.phu)
    ad_new.info()
    print "\n             >>>>>>>    AD APPEND   <<<<<<<<"
    ad_new.append(header=ad3[0].header, data=ad3[0].data,\
        auto_number=True) 
    mystr = "ad_new.append(header=ad4[1].header, data=ad4[1].data,"
    mystr += " auto_number=True)" 
    print mystr
    print "\n             >>>>>>>  AD NEW <<<<<<<<"
    ad_new.info()
    eq_(ad_new[0].extname(), "MDF")
    eq_(ad_new[0].extver(), None)
Пример #17
0
def test16():
    """ASTRODATA-insert TEST 16: AUTO NUMBER, MDF to empty AD
    """
    ad3 = AstroData(mdfscivardq1) 
    print "\n             >>>>>>>     AD     <<<<<<<<"
    ad_new = AstroData(phu=ad3.phu)
    ad_new.info()
    print "\n             >>>>>>>    AD insert   <<<<<<<<"
    ad_new.insert(index=0, header=ad3[0].header, data=ad3[0].data,\
        auto_number=True) 
    mystr = "ad_new.insert(index=0, header=ad4[1].header, data=ad4[1].data,"
    mystr += " auto_number=True)" 
    print mystr
    print "\n             >>>>>>>  AD MODIFIED <<<<<<<<"
    ad_new.info()
    eq_(ad_new[0].extname(), "MDF")
    eq_(ad_new[0].extver(), None)
Пример #18
0
def test9():
    """ASTRODATA-append TEST 9: AUTO NUMBER, var3 to sci12"""
    ad1 = AstroData(sci123) 
    ad4 = AstroData(scivardq123) 
    print "\n             >>>>>>>     AD HOST    <<<<<<<<"
    ad1.hdulist.__delitem__(3)
    print("ad1.hdulist.__delitem__(3)")
    ad1.info()
    print "\n             >>>>>>>    AD APPEND   <<<<<<<<"
    adsci = ad4['VAR', 3]
    print("adsci = ad4['VAR', 3]")
    print "ad1.append(header=adsci.header, data=adsci.data, auto_number=True)"
    ad1.append(header=adsci.header, data=adsci.data, auto_number=True)
    print "\n             >>>>>>>  AD HOST (NEW) <<<<<<<<"
    ad1.info()
    eq_(ad1[2].extname(), "VAR")
    eq_(ad1[2].extver(), 3)
Пример #19
0
def test11():
    """
    ASTRODATA-insert TEST 11: AUTO NUMBER, XVER param allows duplicate XNAM XVER pairs  
    """
    ad1 = AstroData(sci123) 
    ad4 = AstroData(scivardq123) 
    print "\n             >>>>>>>     AD     <<<<<<<<"
    ad1.info()
    print "\n             >>>>>>>    AD insert   <<<<<<<<"
    adsci = ad4['SCI', 1]
    print("adsci = ad4['SCI', 1]")
    ad1.insert(index=1, extver=2, header=adsci.header, data=adsci.data, \
        auto_number=True)
    print("ad1.insert(index=1, extver=2, header=adsci.header, \
        data=adsci.data, auto_number=True)")
    print "\n             >>>>>>>  AD MODIFIED <<<<<<<<"
    ad1.info()
    eq_(ad1[1].extname(), "SCI")
    eq_(ad1[1].extver(), 2)
Пример #20
0
def test9():
    """ASTRODATA-insert TEST 9: AUTO NUMBER, XVER param inserts high XVER """
    ad1 = AstroData(sci123) 
    ad4 = AstroData(scivardq123) 
    print "\n             >>>>>>>     AD    <<<<<<<<"
    ad1.hdulist.__delitem__(3)
    print("ad1.hdulist.__delitem__(3)")
    ad1.info()
    print "\n             >>>>>>>    AD insert   <<<<<<<<"
    adsci = ad4['VAR', 3]
    print("adsci = ad4['VAR', 3]")
    print("ad1.insert(index=2, header=adsci.header, data=adsci.data,"
        "auto_number=True)")
    ad1.insert(index=2, header=adsci.header, data=adsci.data, \
        auto_number=True, extver=5)
    print "\n             >>>>>>>  AD MODIFIED <<<<<<<<"
    ad1.info()
    eq_(ad1[2].extname(), "VAR")
    eq_(ad1[2].extver(), 5)
Пример #21
0
def test1():
    """ASTRODATA-inferred TEST 1: 'SCI',<VER> for all exts if no XNAMs found (MEF)"""
    testhdulist = pyfits.open(sci123)
    
    # make it so no XNAM found
    for hdu in testhdulist[1:]:
        hdu.name = ""
        hdu.header.rename_key("extname","xname" )
    hlist = []
    alist = []
    for hdu in testhdulist[1:]:
        hlist.append(hdu.name)
    print("\n\n    HDUList EXTNAME: %s" % hlist)
    ad = AstroData(testhdulist) 
    for i in range(0,3):
        alist.append((ad[i].extname(), ad[i].extver()))
        eq_(ad[i].extname(), 'SCI', msg="extname is not sci")
        eq_(ad[i].extver(), i + 1, msg="extver is incorrect")
    print("\n    AD (EXTNAME,EXTVER): %s" % alist)
    ad.close()
    testhdulist.close()
Пример #22
0
def test1():
    """ASTRODATA-remove TEST 1: Use index"""
    ad1 = AstroData(sci123) 
    print "\n             >>>>>>>     AD       <<<<<<<<"
    ad1.info()
    print "\n             >>>>>>>    AD remove   <<<<<<<<"
    ad1.remove(1)
    print("ad1.remove(1)")
    print "\n             >>>>>>>  AD MODIFIED   <<<<<<<<"
    ad1.info()
    eq_(ad1[0].extname(), "SCI")
    eq_(ad1[0].extver(), 2)
    eq_(ad1[1].extname(), "SCI")
    eq_(ad1[1].extver(), 3)
Пример #23
0
def test2():
    """ASTRODATA-remove TEST 2: Use 'XNAM', XVER"""
    ad1 = AstroData(sci123) 
    print "\n             >>>>>>>     AD       <<<<<<<<"
    ad1.info()
    print "\n             >>>>>>>    AD remove   <<<<<<<<"
    ad1.remove(("SCI",1))
    print("ad1.remove(('SCI',1))")
    print "\n             >>>>>>>  AD  MODIFIED   <<<<<<<<"
    ad1.info()
    eq_(ad1[0].extname(), "SCI")
    eq_(ad1[0].extver(), 2)
    eq_(ad1[1].extname(), "SCI")
Пример #24
0
def test15():
    """ASTRODATA-append TEST 15: AUTO NUMBER, extver param override (dq2-dq1)
    """
    ad4 = AstroData(scivardq123) 
    print "\n             >>>>>>>     AD NEW    <<<<<<<<"
    ad_new = AstroData(phu=ad4.phu)
    ad_new.info()
    print "\n             >>>>>>>    AD APPEND   <<<<<<<<"
    print ad4.info()
    ad_new.append(header=ad4[1].header, data=ad4[1].data,  extver=1, \
        auto_number=True) 
    ad_new.append(header=ad4[4].header, data=ad4[4].data,  extver=1, \
        auto_number=True) 
    mystr = "ad_new.append(header=ad4[1].header, data=ad4[1].data,  extver=1,"
    mystr += " auto_number=True)" 
    mystr += "\nad_new.append(header=ad4[4].header, data=ad4[4].data,  extver=1,"
    mystr += " auto_number=True)"
    print mystr
    print "\n             >>>>>>>  AD NEW <<<<<<<<"
    ad_new.info()
    eq_(ad_new[0].extname(), "SCI")
    eq_(ad_new[0].extver(), 1)
    eq_(ad_new[1].extname(), "DQ")
    eq_(ad_new[1].extver(), 1)
Пример #25
0
def test2():
    """ASTRODATA-insert TEST 2: AUTO NUMBER, sci123 to mdfscivardq1"""
    ad = runinsert(index=0, f1=mdfscivardq1, f2=sci123, auto=True) 
    eq_(ad[2].extname(), "SCI")
    eq_(ad[1].extname(), "SCI")
    eq_(ad[0].extname(), "SCI")
    eq_(ad[2].extver(), 2)
    eq_(ad[1].extver(), 3)
    eq_(ad[0].extver(), 4)
Пример #26
0
def test4():
    """ASTRODATA-append TEST 4: AUTO NUMBER, scivardq123 to sci123"""
    ad = runappend(f1=sci123, f2=scivardq123, auto=True) 
    eq_(ad[3].extname(), "SCI")
    eq_(ad[4].extname(), "SCI")
    eq_(ad[5].extname(), "SCI")
    eq_(ad[6].extname(), "DQ")
    eq_(ad[7].extname(), "DQ")
    eq_(ad[8].extname(), "DQ")
    eq_(ad[9].extname(), "VAR")
    eq_(ad[10].extname(), "VAR")
    eq_(ad[11].extname(), "VAR")
    eq_(ad[3].extver(), 4)
    eq_(ad[4].extver(), 5)
    eq_(ad[5].extver(), 6)
    eq_(ad[6].extver(), 4)
    eq_(ad[7].extver(), 5)
    eq_(ad[8].extver(), 6)
    eq_(ad[9].extver(), 4)
    eq_(ad[10].extver(), 5)
    eq_(ad[11].extver(), 6)
Пример #27
0
def test1():
    """ASTRODATA-insert TEST 1: AUTO NUMBER, mdfscivardq1 to sci123"""
    ad = runinsert(index=1, f1=sci123, f2=mdfscivardq1, auto=True) 
    eq_(ad[4].extname(), "MDF")
    eq_(ad[3].extname(), "SCI")
    eq_(ad[2].extname(), "VAR")
    eq_(ad[1].extname(), "DQ")
    eq_(ad[3].extver(), 4)
    eq_(ad[2].extver(), 4)
    eq_(ad[1].extver(), 4)
Пример #28
0
def test3():
    """ASTRODATA-close TEST 3: SEF, Closing AD will cause hdulist to be None
    """
    ad = AstroData(sci1)
    ad.close()
    eq_(ad.hdulist, None, msg="ad.hdulist is not None")
Пример #29
0
def test15():
    """ASTRODATA-insert TEST 15: Build AD from scratch
    """
    ad3 = AstroData(mdfscivardq1) 
    print "\n             >>>>>>>     AD HOST    <<<<<<<<"
    ad_new = AstroData()
    ad_new.info()
    print "\n             >>>>>>>    AD insert   <<<<<<<<"
    ad_new.insert(index=0, moredata=ad3)
    ad3.info()
    print("ad_new.insert(index=0, moredata=ad3, auto_number=True)")
    print "\n             >>>>>>>  AD HOST (NEW) <<<<<<<<"
    ad_new.info()
    eq_(ad_new[3].extname(), "MDF")
    eq_(ad_new[2].extname(), "SCI")
    eq_(ad_new[1].extname(), "VAR")
    eq_(ad_new[0].extname(), "DQ")
    eq_(ad_new[2].extver(), 1)
    eq_(ad_new[1].extver(), 1)
    eq_(ad_new[0].extver(), 1)
Пример #30
0
def test14():
    """ASTRODATA-append TEST 14: AUTO NUMBER, given phu, construct sci123"""
    ad1 = AstroData(sci123) 
    print "\n             >>>>>>>     AD NEW    <<<<<<<<"
    ad_new = AstroData(phu=ad1.phu)
    ad_new.info()
    print "\n             >>>>>>>    AD APPEND   <<<<<<<<"
    for i in range(1,4):
        adsci = ad1['SCI', i]
        print("adsci = ad1['SCI', %d]" % i)
        ad_new.append(header=adsci.header, data=adsci.data, auto_number=True)
        mystr = "ad_new.append(header=adsci.header, data=adsci.data,"
        mystr += " auto_number=True)"
        print mystr
    print "\n             >>>>>>>  AD NEW <<<<<<<<"
    ad_new.info()
    eq_(ad_new[0].extname(), "SCI")
    eq_(ad_new[0].extver(), 1)
    eq_(ad_new[1].extname(), "SCI")
    eq_(ad_new[1].extver(), 2)
    eq_(ad_new[2].extname(), "SCI")
    eq_(ad_new[2].extver(), 3)