Exemplo n.º 1
0
 def setUpClass(cls):
     super(TestComm, cls).setUpClass()
     with open("private.txt", "r") as f:
         private_key = RSA.importKey(f.read())
     with open("public.txt", "r") as f:
         publick_key = RSA.importKey(f.read())
     cls.alipay = AliPay("2016101100664659",
                         private_key,
                         sign_type="rsa2",
                         ali_public_key=publick_key,
                         sandbox=True)
     cls.alipay_rsa = AliPay("2016101100664659",
                             private_key,
                             ali_public_key=publick_key,
                             sandbox=True)
Exemplo n.º 2
0
    def test_product(self):
        alipay = AliPay("2019091267287120", """-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAxTxXdQG9+VX1GcU/ETVQHAOIez1el6Vfc2zsXj9Wc3BoU8A29zRDjJPxbZXD0yNQYCzNkLXSnuL9ZDAOtRo5S4XMb92ZhMlEq+yedNSt4qCzEp7eLz+6uwsbNlgAzNlBUynW59kmSHVaCfQx1CkFcFjgZeiVAoJuGa8ujFWiX96h3Ec0MTK8G6uF2+Wl6Tlh8wiShivuw4fcWV4QKxWhTIJ+Dyi2tFszlwt0fJriI12x/xPT0dEr/U2p/8ZhtqlKAKrZJ9fjrGIkM5cSpQcnCEnmZDg6bYfE7NYCQNTIVjM6fXH3Ic1sNXQ5eG0WBRsMrvfiHBqJSU4J9fY1GXy5QQIDAQABAoIBADt9Ssew4dLtmULPmokfMm1wp168kOZea97NsLFwmyuwcNcp96oyKlmhWcV60ZjCYwDPIqWOIdvojRMF57m6EiP0VEg9Z4uEhWDxuo10hIoBfGGWZ1+K8lBuNiP7ASrIMIrb6MT/WyupsaGk9M6QHOLY+73hG+io3HqEux56ycHuRfpX17KU1t6MQzCmcx7C1XixjSsP07+6PW1ya+++1LiRGzRjhv1nu3VWWQyw3hpodbAXDN6CCGt+z+2RYDnqVp5Evq1NLwFe5tU8WDRcLw0eAuRH+wDXG9gO/fryJm51NUHBoaiCa+XkwzeKwc0zp/HGaApbDcSRKkaRAqCwvw0CgYEA5z8pzYoa/xscY2BNAGQFyx+gYErpnoxMYNyPTKHGzkWgvby4pfkMCaEf3v9Ddx5dQiXylCknil/EI5x9rtcdrEbZxsEf6siiNM+KMCMkgJHMXPWNw5zMckiinv0Uu6F5VxJImvoSf0o/J2xjeVZEdWU7OpzKTI8ge0LP9QMSIdMCgYEA2lktRzp3fcIOdUq2HN9077AaRceEYNMVVww9l6tpG8rvOR8T+s6E3Cnu+NkmvQVbZxLDwb5AxNxfMi0h5osfzlyKLfJ5LrGAZT31odxDtjUMfQ93M2vbG72PiGH2gNDO7J07KX1STZEtXQC0s56XiAAbTTuXka1OP1pupKr/OBsCgYEA4B2bShT7LRr9XGLMvgAyjTZNnIV9/adDruyUBVUU9H0O2FS7MEA6pmp+FQWYQS4wfBeDDo0EQVunIExeksDxhTH1hmdNo6Jncn9iEl081052nfFuP5MLogc7dJMbMO3CR9z0eR68Jpmys2ac0dAF8TD3QksK1UAx3sRV/8PGIvkCgYEAy8uqQC4o8z7Z4c3+1koWydSTYQfM3daGt32cS2DYtPEfgTAppNF3HkshWjDMQGasnjLcdYvOxi9txtZrKtQ1tpWW/zWut89CqLxA9Hcy1/EBnASAXIVRt72hJ0lQG4FJcX17h8kJtY5ISeLrxi7C/lQjJ130pSqduvH8DUPw/HsCgYB1mOY7YU0I8H1pXDG3FeBBWAk2Iu4kmzTbACpyiHhSfGDvMOdh7LEnLen5O0rjBteI+B4G5Qo5LcBzemzCsgNTLwbUqMQvU+1onsgHVhZ0u8LcuW06ZLmcHUMqmNBn23xsA6Z3aCZ//z08LJ6w2w6E3nSzy4JUyM62Cn/xSVigPw==
-----END RSA PRIVATE KEY-----""",
                        sign_type="rsa2")
        res = alipay.pay.trade_query(trade_no="2019111022001469351413117626")
        self.assertEqual(res["code"], '40006')
Exemplo n.º 3
0
 def setUpClass(cls):
     super(KoubeiTest, cls).setUpClass()
     with open("private.txt", "r") as f:
         private_key = RSA.importKey(f.read())
     cls.alipay = AliPay("2016101100664659",
                         private_key,
                         sign_type="rsa2",
                         sandbox=True)
     cls.buyer_id = "2088102179514385"
Exemplo n.º 4
0
 def setUpClass(cls):
     super(TestPay, cls).setUpClass()
     with open("private.txt", "r") as f:
         private_key = RSA.importKey(f.read())
     cls.alipay = AliPay("2016101100664659", private_key,
                         sign_type="rsa2", sandbox=True)
     cls.buyer_id = "2088102179514385"
     cls.order_no = String.generate_digits(24)
     print(f"测试订单:{cls.order_no}")
Exemplo n.º 5
0
    def _get_alipay(self):
        """
        获取支付宝sdk
        """
        try:
            private_key = RSA.importKey(base64.b64decode(
                self.alipay_secret).decode('utf-8'))
            public_key = RSA.importKey(base64.b64decode(
                self.alipay_public_key).decode('utf-8'))

            if self.state == "enabled":
                alipay = AliPay(self.alipay_appid, private_key, ali_public_key=public_key,
                                sign_type=self.alipay_sign_type)
            else:
                alipay = AliPay(self.alipay_appid, private_key, ali_public_key=public_key,
                                sign_type=self.alipay_sign_type, sandbox=True)
            return alipay
        except Exception as err:
            _logger.exception(f"生成支付宝客户端失败:{err}")
Exemplo n.º 6
0
    def test_key_outheader(self):
        """以无格式方式测试"""

        key = """MIIEpAIBAAKCAQEAqslYYdOaHG1c6jNpyUfPw5bNPwCPN8gczE6ezPRf0Ud9KK9DiZIlafNU12IC+x/eLrmtgVdC339l+2dmSB9jDx1gmmYZv5kNx//E+aeohYv2mPD1ITN72qkZMs3NwggDHYpg+BACfFcYfUBMqdozEkm9Ow7srROdQR3ekRlvvq2dGDqjol/UzwkwiVfgbzQiBwAsw6znyXRfn7iT7+9c1+CfxiOTxlVCMa6z0ZTXDEvfPU2ElcHtYpXYGediHikEIrOnEhNX8pnLINguGsLwu0iN9+vx1h2FfnY8gx3f3yTFpPhapFGGpgx4jQrVi/mxVMZi8pqFrKA+v5ud5mHLBwIDAQABAoIBABWjzX8XwL85XDyQpybJ4pl10ivZdkwrHvsEOzrc/AcYd9Nf4b7ctcDnBCkGUjpfn1dsT3/D/sUy70kboOoij/qqTkNCDKEqU4Sz89FuXPwO8AARB/5c96SNKJQ3X4rmWP61OfQ0kxwOLRwxuYUMEMyQa1nAWlzTz2kgz8Ky5mXShKRkb+jdY+9gJhG1goGGqlfFUmPsKpedW18Umh0u3zSBm6ppY79Y+T1BO+sYG6bYDPZoEdOZwIR/qhA2UK6NyRsNLpIEksNRAeauYM/00E4tw88NvjUwHuLvTwQzNh6jbL5QR6dfBuipmxGvGpjAtqG0KDwi+ncT+bUiD6R9wgECgYEA4NRTSwUPmOQTZquT2hvlQSr5iTqqO0cNbVxaaDrl3XecsDdil2nvimfRrxUMwj9ISypGrgIKHhFkcfm4t0ShS7HWMiExsmiyLUx5/ukv4Fvf8B3cbU9Gkcr3SAj9M5QKWONJsKs7wWCZ2SopikPLxwhjgicnIM8LlVYx1Zyla9cCgYEAwnbsJWYm5jDgaSF6ZksiHpCRbH+u3bfsCJHL4igummanEzHdpsIb9UDokuhOp9LRpGY7XOBPHM/0R4wxmW+G/bezO791eeOPp/NvN6FexU40RSnrmCqm+wF8bbW+MmbsscJEbg2YiVmnx3w3PD33LslXOhCnecP6vdkFAsiVNFECgYEAz11GTaUnU57Y/hM2VS7xbf/TE+0V4YKRMdLCV+wq4u9Vh3ot5vWASCmlTlSd5fM0HI+rjQa4ii8Ec9MduXsFQamOo8HV8nV6ESm+Q4yT6d0TWIZSLke2EPYgyUHxN0dNm9pWtynX/W25uICYu7v4EWT9UqgGAM62IlDTue+26xUCgYEAvYq4ZUOKCrf9I7tz2BzHZs82T3CseoN4Vmn1NbxAoFIJ6xWhm5Z7NbNMfVRcxgsgN4NFvSMNOWIgEVS+S3V/N/FDi6rz0BhTvznxX2G0Q9AT9o4Dik+YbfNm2nBYsDvN3P0jQbmSwd1XQYL7O4aSVVH96SSueGrjDQRoc+waMeECgYBV6L539J4DYhgcypAtooFgIEShHP5kVgRE5I+Sgx5kU5LtEa9dP+6tS3nkEDezWDqCl8L9imKuSEoFwYi6kCwyfbtufs5lTTeWwzwwKQb6pXVs6vWjQNbWFjY0VQLErlQVJA1MSgOBC4/D4FKJtwc2rNWHPcjh6VMXhPmcXogoBw=="""

        with self.assertRaises(ValueError):
            alipay = AliPay("2016101100664659",
                            key,
                            sign_type="rsa2",
                            sandbox=True)
Exemplo n.º 7
0
    def test_sign(self):
        """RSA生成待签名字符"""
        self.api = AliPay("2014072300007148", None, sandbox=True)
        data = {
            "method": "alipay.mobile.public.menu.add",
            "charset": 'GBK',
            "sign_type": 'RSA2',
            "timestamp": '2014-07-24 03:07:50',
            "biz_content":
            '{"button":[{"actionParam":"ZFB_HFCZ","actionType":"out","name":"话费充值"},{"name":"查询","subButton":[{"actionParam":"ZFB_YECX","actionType":"out","name":"余额查询"},{"actionParam":"ZFB_LLCX","actionType":"out","name":"流量查询"},{"actionParam":"ZFB_HFCX","actionType":"out","name":"话费查询"}]},{"actionParam":"http://m.alipay.com","actionType":"link","name":"最新优惠"}]}',
            "version": "1.0"
        }

        a = self.api.comm.get_signstr(data)
        s = 'app_id=2014072300007148&biz_content={"button":[{"actionParam":"ZFB_HFCZ","actionType":"out","name":"话费充值"},{"name":"查询","subButton":[{"actionParam":"ZFB_YECX","actionType":"out","name":"余额查询"},{"actionParam":"ZFB_LLCX","actionType":"out","name":"流量查询"},{"actionParam":"ZFB_HFCX","actionType":"out","name":"话费查询"}]},{"actionParam":"http://m.alipay.com","actionType":"link","name":"最新优惠"}]}&charset=GBK&method=alipay.mobile.public.menu.add&sign_type=RSA2&timestamp=2014-07-24 03:07:50&version=1.0'
        self.assertEqual(a, s)
Exemplo n.º 8
0
 def test_sign_cert(self):
     """RSA证书生成待签名字符"""
     self.api = AliPay(
         "2014072300007148",
         None,
         sign_type="rsa_cert",
         app_cert_sn="50fa7bc5dc305a4fbdbe166689ddc827",
         alipay_root_cert_sn="6bc29aa3b4d406c43483ffea81e08d22",
         sandbox=True)
     data = {
         "method": "alipay.mobile.public.menu.add",
         "charset": 'GBK',
         "sign_type": 'RSA2',
         "timestamp": '2014-07-24 03:07:50',
         "biz_content":
         '{"button":[{"actionParam":"ZFB_HFCZ","actionType":"out","name":"话费充值"},{"name":"查询","subButton":[{"actionParam":"ZFB_YECX","actionType":"out","name":"余额查询"},{"actionParam":"ZFB_LLCX","actionType":"out","name":"流量查询"},{"actionParam":"ZFB_HFCX","actionType":"out","name":"话费查询"}]},{"actionParam":"http://m.alipay.com","actionType":"link","name":"最新优惠"}]}',
         "version": "1.0"
     }
     a = self.api.comm.get_signstr(data)
     s = 'alipay_root_cert_sn=6bc29aa3b4d406c43483ffea81e08d22&app_cert_sn=50fa7bc5dc305a4fbdbe166689ddc827&app_id=2014072300007148&biz_content={"button":[{"actionParam":"ZFB_HFCZ","actionType":"out","name":"话费充值"},{"name":"查询","subButton":[{"actionParam":"ZFB_YECX","actionType":"out","name":"余额查询"},{"actionParam":"ZFB_LLCX","actionType":"out","name":"流量查询"},{"actionParam":"ZFB_HFCX","actionType":"out","name":"话费查询"}]},{"actionParam":"http://m.alipay.com","actionType":"link","name":"最新优惠"}]}&charset=GBK&method=alipay.mobile.public.menu.add&sign_type=RSA2&timestamp=2014-07-24 03:07:50&version=1.0'
     self.assertEqual(a, s)