def tearDownClass(cls):
     instance, pkg, applet = cls.des.getaids()
     api_pcsc.connectreader()
     api_gp.card()
     api_gp.auth()
     api_gp.deleteaid(pkg, True, expectSW='9000')
     cls.des = None
     api_pcsc.disconnect()
Beispiel #2
0
 def OnSelectReader(self, event):
     name = str(self.readers[event.GetSelection()])
     try:
         api_pcsc.connectreader(name)
         self.showmsg("读卡器连接成功", name)
     except Exception as e:
         self.showlongmsg('读卡器连接失败', str(e))
         return
     api_config.set_default_pcsc_reader_name(name)
Beispiel #3
0
    def setUp(self):
        ''' the testing framework will automatically call for us when we run the test
            
            setUp()和tearDown()会在调用test_XXXX()方法时都会被调用,即会被调用多次。

            unittest将new一个class instance,然后调用setUp(),再调用某个test_XXXX()f方法,再调用tearDown()方法。
            重复多次以执行所有test_XXXX()方法。
        '''
        api_pcsc.connectreader()
        self.bl = Bootloader()
Beispiel #4
0
 def OnSelectReader(self, event):
     name = str(self.readers[event.GetSelection()])
     self.info("尝试连接读卡器 '%s'" % name)
     try:
         api_pcsc.connectreader(name)
         atr = api_pcsc.getatr()
     except Exception as e:
         self.showlongmsg('读卡器连接失败', str(e))
         return
     self.info("ATR '%s'" % atr)
Beispiel #5
0
    def test_helloworld(self):
        ''' 用D:\GPShell-1.4.4\helloworld.cap验证GP相关操作函数的正确性 '''
        r = 'Identiv uTrust 4700 F Contact Reader 0'
        cap = r".\helloworld.cap"
        instance, pkg, applet = 'D0D1D2D3D4D50101', 'D0D1D2D3D4D501', 'D0D1D2D3D4D50101'

        api_pcsc.connectreader(r)
        card()
        auth()
        deleteaid(pkg, True, expectSW='')  # omit delete result
        upload(cap, pkg)
        install(instance, pkg, applet)
    def setUpClass(cls):
        # delete, load, install
        des = DESKEY()
        instance, pkg, applet = des.getaids()

        api_pcsc.connectreader()
        api_gp.card()
        api_gp.auth()
        api_gp.deleteaid(pkg, True, expectSW='')  # omit delete result
        api_gp.upload(des.getcappath(), pkg)
        api_gp.install(instance, pkg, applet)

        cls.des = des
    def setUpClass(cls):
        # delete, load, install
        alg = ALG_PSEUDO_RANDOM()
        instance, pkg, applet = alg.getaids()

        api_pcsc.connectreader()
        api_gp.card()
        api_gp.auth()
        api_gp.deleteaid(pkg, True, expectSW='')  # omit delete result
        api_gp.upload(alg.getcappath(), pkg)
        api_gp.install(instance, pkg, applet)

        cls.alg = alg
    def setUpClass(cls):
        # delete, load, install
        jcs = JCSystem()
        instance, pkg, applet = jcs.getaids()

        api_pcsc.connectreader()
        api_gp.card()
        api_gp.auth()
        api_gp.deleteaid(pkg, True, expectSW='')  # omit delete result
        api_gp.upload(jcs.getcappath(), pkg)
        api_gp.install(instance, pkg, applet)

        cls.jcs = jcs
Beispiel #9
0
    def tearDownClass(cls):
        instance, pkg, applet = cls.etc.getaids()
        api_pcsc.connectreader(Cloud4700.READER_NAME)
        api_gp.card()
        api_gp.auth()
        api_gp.deleteaid(pkg, True, expectSW='9000')
        cls.etc = None

        cls.cloud.enable_all_classes()
        cls.cloud.enable_pps()
        cls.cloud.set_clock_divison(4) # restore to 4.8 MHz
        cls.cloud = None

        api_pcsc.disconnect()
    def setUpClass(cls):
        # delete, load, install
        app = Performace_arrayCopy()
        instance, pkg, applet = app.getaids()

        api_pcsc.connectreader()
        api_gp.card()
        api_gp.auth()
        api_gp.deleteaid(pkg, True, expectSW='')  # omit delete result
        api_gp.upload(app.getcappath(), pkg)
        api_gp.install(instance, pkg, applet)

        api_pcsc.reset()
        cls.app = app
Beispiel #11
0
    def setUpClass(cls):
        # delete, load, install
        etc = Applet_ETC_ITS_BCTC()
        instance, pkg, applet = etc.getaids()

        api_pcsc.connectreader(Cloud4700.READER_NAME) # 指明读卡器名字,因为目前只有4700可以通过APDU方式设定各类电压是否支持
        api_gp.card()
        api_gp.auth()
        api_gp.deleteaid(pkg, True, expectSW='') # omit delete result
        api_gp.upload(etc.getcappath(), pkg)
        api_gp.install(instance, pkg, applet)

        cloud = Cloud4700()
        cloud.enable_all_classes()
        cloud.set_clock_divison(4) # restore to 4.8 MHz
        api_pcsc.reset()

        cls.etc = etc
        cls.cloud = cloud
Beispiel #12
0
 def setUpClass(cls):
     # connect datacenter to get datas
     api_pcsc.connectreader()
     cls.usim = Usim()
     cls.datas = api_config.get_mysql_dict()
Beispiel #13
0
        usim.reset()
        usim.select('3F00')
        usim.select('2F00')
        r, sw = usim.readrecord(1, 0x26)
        self.assertTrue(r != '')
        self.assertTrue(sw == SW_NO_ERROR)
        r, sw = usim.readrecord(2, 0x26)
        self.assertTrue(r != '')
        self.assertTrue(sw == SW_NO_ERROR)

    def test_readbinary(self):
        usim = self.usim
        usim.reset()
        usim.select('3F00')
        usim.select('2FE2')
        for i in range(10):
            r, sw = usim.readbinary(i, 10 - i)
            self.assertTrue(r != '')
            self.assertTrue(sw == SW_NO_ERROR)


#----------------------------------------------------------------------------
if __name__ == '__main__':
    #FORMAT = '%(asctime)s - %(levelname)s - %(name)s - %(message)s'
    #logging.basicConfig(level=logging.DEBUG, format=FORMAT)

    # 测试条件:4700F读卡器 + 插入XH USIM卡一张
    name = r'Identiv uTrust 4700 F Contact Reader 2'
    api_pcsc.connectreader(name)
    unittest.main()
 def setUp(self):
     api_pcsc.connectreader()