<?php
namespace Alipay\EasySDK\Test\marketing\pass;
use Alipay\EasySDK\Kernel\Factory;
use Alipay\EasySDK\Test\TestAccount;
use PHPUnit\Framework\TestCase;
class ClientTest extends TestCase
{
public function __construct($name = null, array $data = [], $dataName = '')
{
parent::__construct($name, $data, $dataName);
$account = new TestAccount();
Factory::setOptions($account->getTestAccount());
}
public function testCreateTemplate()
{
$result = Factory::marketing()->pass()->createTemplate("1234567890", $this->getTplContent());
$this->assertEquals('10000', $result->code);
$this->assertEquals('Success', $result->msg);
}
public function testUpdateTemplate()
{
$result = Factory::marketing()->pass()->updateTemplate("2020012014534017917956080", $this->getTplContent());
$this->assertEquals('10000', $result->code);
$this->assertEquals('Success', $result->msg);
}
public function testAddInstance()
{
$result = Factory::marketing()->pass()->addInstance("2020012014534017917956080", "{}",
"1", "{\"partner_id\":\"2088102114633762\",\"out_trade_no\":\"1234567\"}");
$this->assertEquals('40004', $result->code);
$this->assertEquals('Business Failed', $result->msg);
$this->assertEquals('KP.AE_ALIPASS_APPID_NOSUPPORT', $result->subCode);
$this->assertEquals('该AppId不支持', $result->subMsg);
}
public function testUpdateInstance()
{
$result = Factory::marketing()->pass()->updateInstance("209919213",
"2088918273", "{}", "USED", "8612231273", "wave");
$this->assertEquals('40004', $result->code);
$this->assertEquals('Business Failed', $result->msg);
$this->assertEquals('KP.AE_ALIPASS_NOTEXIST', $result->subCode);
$this->assertEquals('卡券不存在', $result->subMsg);
}
private function getTplContent()
{
return '{"logo": "http://img01.taobaocdn.com/top/i1/LB1NDJuQpXXXXbYXFXXXXXXXXXX","strip": null,"icon": null,"content": {
"evoucherInfo": {
"goodsId": "",
"title": "test",
"type": "boardingPass",
"product": "air",
"startDate": "2020-01-20 13:45:56",
"endDate": "2020-01-25 13:45:56",
"operation": [{
"message": {
"img": "http://img01.taobaocdn.com/top/i1/LB1NDJuQpXXXXbYXFXXXXXXXXXX",
"target": ""
},
"format": "img",
"messageEncoding": "utf-8",
"altText": ""
}],
"einfo": {
"logoText": "test",
"headFields": [{"key": "test","label": "测试","value": "","type": "text"}],
"primaryFields": [{"key": "from","label": "测试","value": "","type": "text"},{"key": "to","label": "测试","value": "","type": "text"}],
"secondaryFields": [{"key": "fltNo","label": "航班号","value": "CA123","type": "text"}],
"auxiliaryFields": [{"key": "test","label": "测试","value": "","type": "text"}],
"backFields": []
},
"locations": []
},
"merchant": {"mname": "君泓","mtel": "","minfo": ""},
"platform": {
"channelID": "2088201564809153",
"webServiceUrl": "https://alipass.alipay.com/builder/syncRecord.htm?tempId=2020012013442621326446216"
},
"style": {"backgroundColor": "RGB(26,150,219)"},
"fileInfo": {
"formatVersion": "2",
"canShare": true,
"canBuy": false,
"canPresent": true,
"serialNumber": "2020012013520759738677158",
"supportTaxi": "true",
"taxiSchemaUrl": ""
},
"appInfo": {"app": {"android_appid": "","ios_appid": "","android_launch": "","ios_launch": "","android_download": "","ios_download": ""},"label": "测试","message": ""},
"source": "alipassprod",
"alipayVerify": ["qrcode"]}}';
}
}