Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
X
xm-sportstest
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xiamai-test
xm-sportstest
Commits
3c6a31e0
Commit
3c6a31e0
authored
Nov 26, 2024
by
xyy
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
16a2c32a
d3ea1012
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
274 additions
and
15 deletions
+274
-15
src/main/java/com/xiaomai/cases/polar/coupon/TestCreateCoupon.java
+0
-1
src/main/java/com/xiaomai/cases/polar/importExcel/TestImportDeposit.java
+7
-3
src/main/java/com/xiaomai/cases/polar/importExcel/TestImportMember.java
+6
-3
src/main/java/com/xiaomai/cases/polar/importExcel/TestImportMemberCard.java
+7
-3
src/main/java/com/xiaomai/cases/polar/memberCard/MemberCardTimeSale/CardTimeSaleMinTools.java
+103
-0
src/main/java/com/xiaomai/cases/polar/memberCard/MemberCardTimeSale/MemberCardTimeSaleTools.java
+6
-3
src/main/java/com/xiaomai/cases/polar/memberCard/MemberCardTimeSale/TestPublish.java
+1
-1
src/main/java/com/xiaomai/cases/polar/memberCard/MemberCardTimeSale/TestPurchaseCardTimeSale.java
+131
-0
src/main/java/com/xiaomai/cases/polar/memberCard/MemberCardTimeSale/Testflashsaleedit.java
+1
-1
src/main/java/com/xiaomai/cases/polar/utils/Entity/SignatureVO.java
+11
-0
src/main/java/com/xiaomai/cases/polar/utils/ResourceUtil.java
+1
-0
No files found.
src/main/java/com/xiaomai/cases/polar/coupon/TestCreateCoupon.java
View file @
3c6a31e0
...
@@ -9,7 +9,6 @@ import com.xiaomai.utils.RandomStringUtil;
...
@@ -9,7 +9,6 @@ import com.xiaomai.utils.RandomStringUtil;
import
com.xiaomai.utils.XMJSONPath
;
import
com.xiaomai.utils.XMJSONPath
;
import
org.testng.Assert
;
import
org.testng.Assert
;
import
org.testng.annotations.BeforeClass
;
import
org.testng.annotations.BeforeClass
;
import
org.testng.annotations.Test
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
...
...
src/main/java/com/xiaomai/cases/polar/importExcel/TestImportDeposit.java
View file @
3c6a31e0
...
@@ -45,19 +45,20 @@ public class TestImportDeposit extends XMBaseTest {
...
@@ -45,19 +45,20 @@ public class TestImportDeposit extends XMBaseTest {
//2、获取签名
//2、获取签名
JSONObject
object
=
new
JSONObject
();
JSONObject
object
=
new
JSONObject
();
object
.
put
(
"
tenant
Id"
,
xmAppApi
.
getLoginInfo
().
getBrandId
());
object
.
put
(
"
brand
Id"
,
xmAppApi
.
getLoginInfo
().
getBrandId
());
object
.
put
(
"tenantType"
,
"BRAND"
);
//
object.put("tenantType", "BRAND");
object
.
put
(
"resourceName"
,
filePathName
);
object
.
put
(
"resourceName"
,
filePathName
);
object
.
put
(
"resourceNameToMD5"
,
false
);
object
.
put
(
"resourceNameToMD5"
,
false
);
object
.
put
(
"bizCode"
,
"IMPORT_TASK"
);
object
.
put
(
"bizCode"
,
"IMPORT_TASK"
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
object
.
toString
(),
headers
).
assetsSuccess
(
true
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
object
.
toString
(),
headers
).
assetsSuccess
(
true
);
JSONObject
result1
=
xmAppApi
.
getBodyInJSON
();
JSONObject
result1
=
xmAppApi
.
getBodyInJSON
();
String
resourceId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.resourceId"
);
String
resourceId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.resourceId"
);
String
accessId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.accessId"
);
String
accessId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.access
Key
Id"
);
String
policy
=
XMJSONPath
.
readPath
(
result1
,
"$.result.policy"
);
String
policy
=
XMJSONPath
.
readPath
(
result1
,
"$.result.policy"
);
String
signature
=
XMJSONPath
.
readPath
(
result1
,
"$.result.signature"
);
String
signature
=
XMJSONPath
.
readPath
(
result1
,
"$.result.signature"
);
String
key
=
XMJSONPath
.
readPath
(
result1
,
"$.result.key"
);
String
key
=
XMJSONPath
.
readPath
(
result1
,
"$.result.key"
);
String
callback
=
XMJSONPath
.
readPath
(
result1
,
"$.result.callback"
);
String
callback
=
XMJSONPath
.
readPath
(
result1
,
"$.result.callback"
);
String
securityToken
=
XMJSONPath
.
readPath
(
result1
,
"$.result.securityToken"
);
String
host
=
XMJSONPath
.
readPath
(
result1
,
"$.result.host"
);
String
host
=
XMJSONPath
.
readPath
(
result1
,
"$.result.host"
);
String
time
=
XMJSONPath
.
readPath
(
result1
,
"$.result.extAttrs"
);
String
time
=
XMJSONPath
.
readPath
(
result1
,
"$.result.extAttrs"
);
JSONObject
time1
=
JSONObject
.
parseObject
(
time
);
JSONObject
time1
=
JSONObject
.
parseObject
(
time
);
...
@@ -72,12 +73,15 @@ public class TestImportDeposit extends XMBaseTest {
...
@@ -72,12 +73,15 @@ public class TestImportDeposit extends XMBaseTest {
signatureVO
.
setPolicy
(
policy
);
signatureVO
.
setPolicy
(
policy
);
signatureVO
.
setSignature
(
signature
);
signatureVO
.
setSignature
(
signature
);
signatureVO
.
setCallback
(
callback
);
signatureVO
.
setCallback
(
callback
);
signatureVO
.
setSecurityToken
(
securityToken
);
signatureVO
.
setExtAttrs
(
time1
.
getString
(
"q-key-time"
));
signatureVO
.
setExtAttrs
(
time1
.
getString
(
"q-key-time"
));
signatureVO
.
setHost
(
host
);
signatureVO
.
setHost
(
host
);
signatureVO
.
setResourceId
(
Long
.
valueOf
(
resourceId
));
signatureVO
.
setResourceId
(
Long
.
valueOf
(
resourceId
));
String
result
=
String
.
valueOf
(
ResourceUtil
.
uploadFileContentToTencent
(
inputStream
,
filePathName
,
signatureVO
,
5000
,
"multipart/form-data"
));
String
result
=
String
.
valueOf
(
ResourceUtil
.
uploadFileContentToTencent
(
inputStream
,
filePathName
,
signatureVO
,
5000
,
"multipart/form-data"
));
Assert
.
assertEquals
(
result
,
"true"
);
Assert
.
assertEquals
(
result
,
"true"
);
Thread
.
sleep
(
6000
);
//4.创建任务
//4.创建任务
JSONObject
result2
=
importTools
.
createImportTask
(
"DEPOSIT_CARD_ORDER"
,
resourceId
,
null
,
""
);
JSONObject
result2
=
importTools
.
createImportTask
(
"DEPOSIT_CARD_ORDER"
,
resourceId
,
null
,
""
);
String
recordId
=
XMJSONPath
.
readPath
(
result2
,
"$.result"
);
String
recordId
=
XMJSONPath
.
readPath
(
result2
,
"$.result"
);
...
...
src/main/java/com/xiaomai/cases/polar/importExcel/TestImportMember.java
View file @
3c6a31e0
...
@@ -50,19 +50,20 @@ public class TestImportMember extends XMBaseTest {
...
@@ -50,19 +50,20 @@ public class TestImportMember extends XMBaseTest {
//2、获取签名
//2、获取签名
JSONObject
object
=
new
JSONObject
();
JSONObject
object
=
new
JSONObject
();
object
.
put
(
"
tenant
Id"
,
xmAppApi
.
getLoginInfo
().
getBrandId
());
object
.
put
(
"
brand
Id"
,
xmAppApi
.
getLoginInfo
().
getBrandId
());
object
.
put
(
"tenantType"
,
"BRAND"
);
//
object.put("tenantType", "BRAND");
object
.
put
(
"resourceName"
,
filePathName
);
object
.
put
(
"resourceName"
,
filePathName
);
object
.
put
(
"resourceNameToMD5"
,
false
);
object
.
put
(
"resourceNameToMD5"
,
false
);
object
.
put
(
"bizCode"
,
"IMPORT_TASK"
);
object
.
put
(
"bizCode"
,
"IMPORT_TASK"
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
object
.
toString
(),
headers
).
assetsSuccess
(
true
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
object
.
toString
(),
headers
).
assetsSuccess
(
true
);
JSONObject
result1
=
xmAppApi
.
getBodyInJSON
();
JSONObject
result1
=
xmAppApi
.
getBodyInJSON
();
String
resourceId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.resourceId"
);
String
resourceId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.resourceId"
);
String
accessId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.accessId"
);
String
accessId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.access
Key
Id"
);
String
policy
=
XMJSONPath
.
readPath
(
result1
,
"$.result.policy"
);
String
policy
=
XMJSONPath
.
readPath
(
result1
,
"$.result.policy"
);
String
signature
=
XMJSONPath
.
readPath
(
result1
,
"$.result.signature"
);
String
signature
=
XMJSONPath
.
readPath
(
result1
,
"$.result.signature"
);
String
key
=
XMJSONPath
.
readPath
(
result1
,
"$.result.key"
);
String
key
=
XMJSONPath
.
readPath
(
result1
,
"$.result.key"
);
String
callback
=
XMJSONPath
.
readPath
(
result1
,
"$.result.callback"
);
String
callback
=
XMJSONPath
.
readPath
(
result1
,
"$.result.callback"
);
String
securityToken
=
XMJSONPath
.
readPath
(
result1
,
"$.result.securityToken"
);
String
host
=
XMJSONPath
.
readPath
(
result1
,
"$.result.host"
);
String
host
=
XMJSONPath
.
readPath
(
result1
,
"$.result.host"
);
String
time
=
XMJSONPath
.
readPath
(
result1
,
"$.result.extAttrs"
);
String
time
=
XMJSONPath
.
readPath
(
result1
,
"$.result.extAttrs"
);
JSONObject
time1
=
JSONObject
.
parseObject
(
time
);
JSONObject
time1
=
JSONObject
.
parseObject
(
time
);
...
@@ -77,12 +78,14 @@ public class TestImportMember extends XMBaseTest {
...
@@ -77,12 +78,14 @@ public class TestImportMember extends XMBaseTest {
signatureVO
.
setPolicy
(
policy
);
signatureVO
.
setPolicy
(
policy
);
signatureVO
.
setSignature
(
signature
);
signatureVO
.
setSignature
(
signature
);
signatureVO
.
setCallback
(
callback
);
signatureVO
.
setCallback
(
callback
);
signatureVO
.
setSecurityToken
(
securityToken
);
signatureVO
.
setExtAttrs
(
time1
.
getString
(
"q-key-time"
));
signatureVO
.
setExtAttrs
(
time1
.
getString
(
"q-key-time"
));
signatureVO
.
setHost
(
host
);
signatureVO
.
setHost
(
host
);
signatureVO
.
setResourceId
(
Long
.
valueOf
(
resourceId
));
signatureVO
.
setResourceId
(
Long
.
valueOf
(
resourceId
));
String
result
=
String
.
valueOf
(
ResourceUtil
.
uploadFileContentToTencent
(
inputStream
,
filePathName
,
signatureVO
,
5000
,
"multipart/form-data"
));
String
result
=
String
.
valueOf
(
ResourceUtil
.
uploadFileContentToTencent
(
inputStream
,
filePathName
,
signatureVO
,
5000
,
"multipart/form-data"
));
Assert
.
assertEquals
(
result
,
"true"
);
Assert
.
assertEquals
(
result
,
"true"
);
Thread
.
sleep
(
6000
);
//4.创建任务
//4.创建任务
JSONObject
result2
=
importTools
.
createImportTask
(
"MEMBER"
,
resourceId
,
"REPLACE_DUPLICATES"
,
""
);
JSONObject
result2
=
importTools
.
createImportTask
(
"MEMBER"
,
resourceId
,
"REPLACE_DUPLICATES"
,
""
);
String
recordId
=
XMJSONPath
.
readPath
(
result2
,
"$.result"
);
String
recordId
=
XMJSONPath
.
readPath
(
result2
,
"$.result"
);
...
...
src/main/java/com/xiaomai/cases/polar/importExcel/TestImportMemberCard.java
View file @
3c6a31e0
...
@@ -46,19 +46,21 @@ public class TestImportMemberCard extends XMBaseTest {
...
@@ -46,19 +46,21 @@ public class TestImportMemberCard extends XMBaseTest {
//2、获取签名
//2、获取签名
JSONObject
object
=
new
JSONObject
();
JSONObject
object
=
new
JSONObject
();
object
.
put
(
"tenantId"
,
xmAppApi
.
getLoginInfo
().
getBrandId
());
// object.put("tenantId", xmAppApi.getLoginInfo().getBrandId()); //新接口参数更换成其他
object
.
put
(
"tenantType"
,
"BRAND"
);
// object.put("tenantType", "BRAND"); //新接口参数更换成其他
object
.
put
(
"brandId"
,
xmAppApi
.
getLoginInfo
().
getBrandId
());
object
.
put
(
"resourceName"
,
filePathName
);
object
.
put
(
"resourceName"
,
filePathName
);
object
.
put
(
"resourceNameToMD5"
,
false
);
object
.
put
(
"resourceNameToMD5"
,
false
);
object
.
put
(
"bizCode"
,
"IMPORT_TASK"
);
object
.
put
(
"bizCode"
,
"IMPORT_TASK"
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
object
.
toString
(),
headers
).
assetsSuccess
(
true
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
object
.
toString
(),
headers
).
assetsSuccess
(
true
);
JSONObject
result1
=
xmAppApi
.
getBodyInJSON
();
JSONObject
result1
=
xmAppApi
.
getBodyInJSON
();
String
resourceId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.resourceId"
);
String
resourceId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.resourceId"
);
String
accessId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.accessId"
);
String
accessId
=
XMJSONPath
.
readPath
(
result1
,
"$.result.access
Key
Id"
);
String
policy
=
XMJSONPath
.
readPath
(
result1
,
"$.result.policy"
);
String
policy
=
XMJSONPath
.
readPath
(
result1
,
"$.result.policy"
);
String
signature
=
XMJSONPath
.
readPath
(
result1
,
"$.result.signature"
);
String
signature
=
XMJSONPath
.
readPath
(
result1
,
"$.result.signature"
);
String
key
=
XMJSONPath
.
readPath
(
result1
,
"$.result.key"
);
String
key
=
XMJSONPath
.
readPath
(
result1
,
"$.result.key"
);
String
callback
=
XMJSONPath
.
readPath
(
result1
,
"$.result.callback"
);
String
callback
=
XMJSONPath
.
readPath
(
result1
,
"$.result.callback"
);
String
securityToken
=
XMJSONPath
.
readPath
(
result1
,
"$.result.securityToken"
);
String
host
=
XMJSONPath
.
readPath
(
result1
,
"$.result.host"
);
String
host
=
XMJSONPath
.
readPath
(
result1
,
"$.result.host"
);
String
time
=
XMJSONPath
.
readPath
(
result1
,
"$.result.extAttrs"
);
String
time
=
XMJSONPath
.
readPath
(
result1
,
"$.result.extAttrs"
);
JSONObject
time1
=
JSONObject
.
parseObject
(
time
);
JSONObject
time1
=
JSONObject
.
parseObject
(
time
);
...
@@ -73,12 +75,14 @@ public class TestImportMemberCard extends XMBaseTest {
...
@@ -73,12 +75,14 @@ public class TestImportMemberCard extends XMBaseTest {
signatureVO
.
setPolicy
(
policy
);
signatureVO
.
setPolicy
(
policy
);
signatureVO
.
setSignature
(
signature
);
signatureVO
.
setSignature
(
signature
);
signatureVO
.
setCallback
(
callback
);
signatureVO
.
setCallback
(
callback
);
signatureVO
.
setSecurityToken
(
securityToken
);
signatureVO
.
setExtAttrs
(
time1
.
getString
(
"q-key-time"
));
signatureVO
.
setExtAttrs
(
time1
.
getString
(
"q-key-time"
));
signatureVO
.
setHost
(
host
);
signatureVO
.
setHost
(
host
);
signatureVO
.
setResourceId
(
Long
.
valueOf
(
resourceId
));
signatureVO
.
setResourceId
(
Long
.
valueOf
(
resourceId
));
String
result
=
String
.
valueOf
(
ResourceUtil
.
uploadFileContentToTencent
(
inputStream
,
filePathName
,
signatureVO
,
5000
,
"multipart/form-data"
));
String
result
=
String
.
valueOf
(
ResourceUtil
.
uploadFileContentToTencent
(
inputStream
,
filePathName
,
signatureVO
,
5000
,
"multipart/form-data"
));
Assert
.
assertEquals
(
result
,
"true"
);
Assert
.
assertEquals
(
result
,
"true"
);
Thread
.
sleep
(
6000
);
//4.创建任务
//4.创建任务
JSONObject
result2
=
importTools
.
createImportTask
(
"MEMBER_CARD_ORDER"
,
resourceId
,
null
,
""
);
JSONObject
result2
=
importTools
.
createImportTask
(
"MEMBER_CARD_ORDER"
,
resourceId
,
null
,
""
);
String
recordId
=
XMJSONPath
.
readPath
(
result2
,
"$.result"
);
String
recordId
=
XMJSONPath
.
readPath
(
result2
,
"$.result"
);
...
...
src/main/java/com/xiaomai/cases/polar/memberCard/MemberCardTimeSale/CardTimeSaleMinTools.java
0 → 100644
View file @
3c6a31e0
package
com
.
xiaomai
.
cases
.
polar
.
memberCard
.
MemberCardTimeSale
;
import
com.alibaba.fastjson.JSONObject
;
import
com.xiaomai.client.DataUserInfo
;
import
com.xiaomai.enums.ApiModule
;
import
com.xiaomai.enums.RequestType
;
import
com.xiaomai.enums.Terminal
;
import
com.xiaomai.utils.XMBaseTest
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.List
;
@Component
(
"CardTimeSaleMinTools"
)
public
class
CardTimeSaleMinTools
extends
XMBaseTest
{
/**
* @param
* @description:小程序查看秒杀活动列表
* @author: yangjian
* @param activityId 活动id
* @param state 活动状态
**/
public
JSONObject
getStudioActivityPage
(
String
activityId
,
String
state
,
String
memberId
,
DataUserInfo
...
dataUserInfos
)
{
dataApi
.
setApiModule
(
ApiModule
.
Lunar_Card
)
.
setApiName
(
"API_getStudioActivityPage"
)
.
setTerminal
(
Terminal
.
minApp
);
super
.
beforeDataRequest
(
dataUserInfos
);
List
<
String
>
activityIds
=
new
ArrayList
<>();
activityIds
.
add
(
activityId
);
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"current"
,
0
);
jsonObject
.
put
(
"size"
,
50
);
jsonObject
.
put
(
"state"
,
state
);
//null全部,PROCESSING开抢中,WAITING即将开抢
jsonObject
.
put
(
"activityIds"
,
activityIds
);
//活动ID
jsonObject
.
put
(
"memberId"
,
memberId
);
//String memberId = userTools.getMemberInfo().getString("memberId");
jsonObject
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
jsonObject
.
toJSONString
(),
dataheadrs
).
assetsSuccess
(
true
);
JSONObject
response
=
dataApi
.
getBodyInJSON
();
return
response
;
}
/**
* @param
* @description:秒杀活动查看会员卡详情
* @author: yangjian
* @param activityId 活动id
**/
public
JSONObject
findTenantCardDetailById
(
String
id
,
String
activityId
,
String
memberId
,
DataUserInfo
...
dataUserInfos
)
{
dataApi
.
setApiModule
(
ApiModule
.
Lunar_Card
)
.
setApiName
(
"API_findTenantCardDetailById"
)
.
setTerminal
(
Terminal
.
minApp
);
super
.
beforeDataRequest
(
dataUserInfos
);
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"activityId"
,
activityId
);
jsonObject
.
put
(
"id"
,
id
);
//会员卡ID
jsonObject
.
put
(
"memberId"
,
memberId
);
//String memberId = userTools.getMemberInfo().getString("memberId");
jsonObject
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
jsonObject
.
toJSONString
(),
dataheadrs
).
assetsSuccess
(
true
);
JSONObject
response
=
dataApi
.
getBodyInJSON
();
return
response
;
}
/**
* @param
* @description:预约秒杀活动
* @author: yangjian
* @param activityId 活动id
* @param cancel 预约状态
**/
public
JSONObject
reserveRemindOrCancel
(
String
cancel
,
String
activityId
,
String
memberId
,
DataUserInfo
...
dataUserInfos
)
{
dataApi
.
setApiModule
(
ApiModule
.
Lunar_Card
)
.
setApiName
(
"API_reserveRemindOrCancel"
)
.
setTerminal
(
Terminal
.
minApp
);
super
.
beforeDataRequest
(
dataUserInfos
);
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"activityId"
,
activityId
);
jsonObject
.
put
(
"cancel"
,
cancel
);
//预约状态:true为取消预约提醒,false为预约提醒
jsonObject
.
put
(
"memberId"
,
memberId
);
//String memberId = userTools.getMemberInfo().getString("memberId");
jsonObject
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
jsonObject
.
toJSONString
(),
dataheadrs
).
assetsSuccess
(
true
);
JSONObject
response
=
dataApi
.
getBodyInJSON
();
return
response
;
}
}
src/main/java/com/xiaomai/cases/polar/memberCard/MemberCardTimeSale/MemberCardTimeSaleTools.java
View file @
3c6a31e0
...
@@ -51,7 +51,7 @@ public class MemberCardTimeSaleTools extends XMBaseTest {
...
@@ -51,7 +51,7 @@ public class MemberCardTimeSaleTools extends XMBaseTest {
* @param membercardId 关联的会员卡ID
* @param membercardId 关联的会员卡ID
* @param activityName 秒杀活动名称
* @param activityName 秒杀活动名称
**/
**/
public
JSONObject
create
(
String
membercardId
,
String
activityName
,
Boolean
publish
,
DataUserInfo
...
dataUserInfos
)
{
public
JSONObject
create
(
String
membercardId
,
String
activityName
,
Boolean
publish
,
long
endTime
,
long
startTime
,
DataUserInfo
...
dataUserInfos
)
{
dataApi
.
setApiModule
(
ApiModule
.
Polar_Card
)
dataApi
.
setApiModule
(
ApiModule
.
Polar_Card
)
.
setApiName
(
"API_createfalshsale"
)
.
setApiName
(
"API_createfalshsale"
)
...
@@ -66,8 +66,11 @@ public class MemberCardTimeSaleTools extends XMBaseTest {
...
@@ -66,8 +66,11 @@ public class MemberCardTimeSaleTools extends XMBaseTest {
JSONObject
jsonObject
=
new
JSONObject
();
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"activityName"
,
activityName
);
jsonObject
.
put
(
"activityName"
,
activityName
);
jsonObject
.
put
(
"activityType"
,
"SECKILL"
);
//活动类型为秒杀
jsonObject
.
put
(
"activityType"
,
"SECKILL"
);
//活动类型为秒杀
jsonObject
.
put
(
"endTime"
,
TimeUtils
.
getTodayEndTime
());
//活动结束时间为今天24点
//jsonObject.put("endTime", TimeUtils.getTodayEndTime());//活动结束时间为今天24点
jsonObject
.
put
(
"startTime"
,
TimeUtils
.
getTodayTime
());
//活动开始时间为今天0点
//jsonObject.put("startTime", TimeUtils.getTodayTime());//活动开始时间为今天0点
jsonObject
.
put
(
"endTime"
,
endTime
);
//活动结束时间为今天24点
jsonObject
.
put
(
"startTime"
,
startTime
);
//活动开始时间为今天0点
jsonObject
.
put
(
"applyMemberStates"
,
applyMemberStates
);
//活动可参与用户
jsonObject
.
put
(
"applyMemberStates"
,
applyMemberStates
);
//活动可参与用户
jsonObject
.
put
(
"autoCancelMinutes"
,
"5"
);
//自动取消订单时间
jsonObject
.
put
(
"autoCancelMinutes"
,
"5"
);
//自动取消订单时间
jsonObject
.
put
(
"commodityId"
,
membercardId
);
//活动的会员卡商品
jsonObject
.
put
(
"commodityId"
,
membercardId
);
//活动的会员卡商品
...
...
src/main/java/com/xiaomai/cases/polar/memberCard/MemberCardTimeSale/TestPublish.java
View file @
3c6a31e0
...
@@ -33,7 +33,7 @@ public class TestPublish extends BaseTestImpl {
...
@@ -33,7 +33,7 @@ public class TestPublish extends BaseTestImpl {
String
title
=
"未发布的秒杀活动"
+
TimeUtils
.
getCurrentTime
();
String
title
=
"未发布的秒杀活动"
+
TimeUtils
.
getCurrentTime
();
JSONObject
result1
=
MemberCardTimeSaleTools
.
getStudioActivityPage
(
"UNPUBLISHED"
);
//未发布条数;
JSONObject
result1
=
MemberCardTimeSaleTools
.
getStudioActivityPage
(
"UNPUBLISHED"
);
//未发布条数;
int
before
=
Integer
.
parseInt
(
result1
.
getJSONObject
(
"result"
).
getString
(
"total"
));
int
before
=
Integer
.
parseInt
(
result1
.
getJSONObject
(
"result"
).
getString
(
"total"
));
String
activeid
=
MemberCardTimeSaleTools
.
create
(
cardId
,
title
,
false
).
getString
(
"result"
);
//创建一个未发布的秒杀活动
String
activeid
=
MemberCardTimeSaleTools
.
create
(
cardId
,
title
,
false
,
TimeUtils
.
getTodayEndTime
(),
TimeUtils
.
getTodayTime
()
).
getString
(
"result"
);
//创建一个未发布的秒杀活动
JSONObject
result2
=
MemberCardTimeSaleTools
.
getStudioActivityPage
(
"UNPUBLISHED"
);
//未发布条数;
JSONObject
result2
=
MemberCardTimeSaleTools
.
getStudioActivityPage
(
"UNPUBLISHED"
);
//未发布条数;
int
after
=
Integer
.
parseInt
(
result2
.
getJSONObject
(
"result"
).
getString
(
"total"
));
int
after
=
Integer
.
parseInt
(
result2
.
getJSONObject
(
"result"
).
getString
(
"total"
));
Assert
.
assertEquals
(
after
,
before
+
1
);
//未发布活动+1
Assert
.
assertEquals
(
after
,
before
+
1
);
//未发布活动+1
...
...
src/main/java/com/xiaomai/cases/polar/memberCard/MemberCardTimeSale/TestPurchaseCardTimeSale.java
0 → 100644
View file @
3c6a31e0
package
com
.
xiaomai
.
cases
.
polar
.
memberCard
.
MemberCardTimeSale
;
import
com.alibaba.fastjson.JSONObject
;
import
com.xiaomai.cases.lunar.order.OrderCTools
;
import
com.xiaomai.cases.lunar.user.UserTools
;
import
com.xiaomai.cases.polar.finance.order.OrderTools
;
import
com.xiaomai.cases.polar.luckyDraw.LuckyDrawTools
;
import
com.xiaomai.cases.polar.memberCard.CardTools
;
import
com.xiaomai.client.DataUserInfo
;
import
com.xiaomai.enums.ApiModule
;
import
com.xiaomai.enums.LoginAccount
;
import
com.xiaomai.enums.RequestType
;
import
com.xiaomai.enums.Terminal
;
import
com.xiaomai.utils.RandomStringUtil
;
import
com.xiaomai.utils.TimeUtils
;
import
com.xiaomai.utils.XMBaseTest
;
import
com.xiaomai.utils.XMJSONPath
;
import
org.testng.Assert
;
import
org.testng.annotations.BeforeMethod
;
import
org.testng.annotations.Test
;
import
javax.annotation.Resource
;
public
class
TestPurchaseCardTimeSale
extends
XMBaseTest
{
DataUserInfo
info
=
new
DataUserInfo
();
@Resource
(
name
=
"memberCardTimeSaleTools"
)
MemberCardTimeSaleTools
memberCardTimeSaleTools
;
@Resource
(
name
=
"cardTools"
)
CardTools
cardTools
;
@Resource
(
name
=
"userTools"
)
UserTools
userTools
;
@Resource
(
name
=
"CardTimeSaleMinTools"
)
CardTimeSaleMinTools
CardTimeSaleMinTools
;
@Resource
(
name
=
"orderCTools"
)
OrderCTools
orderCTools
;
@Resource
(
name
=
"orderTools"
)
OrderTools
orderTools
;
@BeforeMethod
public
void
beforeTest
(){
xmAppApi
.
setApiModule
(
ApiModule
.
Lunar_Order
)
.
setApiName
(
"API_purchaseCard"
)
.
setLoginUser
(
LoginAccount
.
GYM_MINIAPPC
)
.
setTerminal
(
Terminal
.
minApp
);
dal
.
setCase_owner
(
"yangjian"
)
.
setCase_name
(
Thread
.
currentThread
().
getStackTrace
()[
1
].
getFileName
().
split
(
"\\."
)[
0
]);
super
.
beforeTest
();
}
@Test
(
description
=
"参与秒杀活动"
)
public
void
testPurchaseCardTimeSale
()
throws
InterruptedException
{
info
.
setTerminal
(
Terminal
.
B
);
info
.
setLoginUser
(
LoginAccount
.
GYM_PROD
);
String
cardId
=
cardTools
.
memberCardCreate
(
"用于秒杀活动的会员卡"
+
TimeUtils
.
getCurrentTime
(),
info
).
getString
(
"result"
);
//创建一张用于秒杀活动的会员卡
String
title
=
"预约秒杀活动"
+
TimeUtils
.
getCurrentTime
();
String
activeid
=
memberCardTimeSaleTools
.
create
(
cardId
,
title
,
true
,
TimeUtils
.
getTodayEndTime
(),
TimeUtils
.
getCurrentTime_AddMinute
(
6
),
info
).
getString
(
"result"
);
//创建并发布秒杀活动 活动开始前5分钟可以预约
String
memberId
=
userTools
.
getMemberInfo
().
getString
(
"memberId"
);
CardTimeSaleMinTools
.
getStudioActivityPage
(
activeid
,
"WAITING"
,
memberId
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.records[0].activityId"
),
activeid
,
"即将开始的活动没有新建的秒杀活动"
);
//断言即将开始活动列表有目标活动
CardTimeSaleMinTools
.
reserveRemindOrCancel
(
"false"
,
activeid
,
memberId
);
//预约秒杀活动
CardTimeSaleMinTools
.
findTenantCardDetailById
(
cardId
,
activeid
,
memberId
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.activityVO.reserveRemind"
),
"true"
,
"预约秒杀活动失败"
);
//断言目标活动已预约完成
CardTimeSaleMinTools
.
reserveRemindOrCancel
(
"true"
,
activeid
,
memberId
);
//取消预约秒杀活动
CardTimeSaleMinTools
.
findTenantCardDetailById
(
cardId
,
activeid
,
memberId
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.activityVO.reserveRemind"
),
"false"
,
"预约秒杀活动失败"
);
//断言目标活动已取消预约
Thread
.
sleep
(
5000
);
String
cardId1
=
cardTools
.
memberCardCreate
(
"用于秒杀活动的会员卡"
+
TimeUtils
.
getCurrentTime
(),
info
).
getString
(
"result"
);
//创建一张用于秒杀活动的会员卡
String
title1
=
"参与秒杀活动"
+
TimeUtils
.
getCurrentTime
();
String
activeid1
=
memberCardTimeSaleTools
.
create
(
cardId1
,
title1
,
true
,
TimeUtils
.
getTodayEndTime
(),
TimeUtils
.
getTodayTime
(),
info
).
getString
(
"result"
);
//创建一个已开始的活动的秒杀活动
int
before
=
Integer
.
parseInt
(
XMJSONPath
.
readPath
(
CardTimeSaleMinTools
.
findTenantCardDetailById
(
cardId1
,
activeid1
,
memberId
),
"$.result.activityVO.salesVolumeShow"
));
//初始秒杀数量
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"activatePattern"
,
"PURCHASE"
);
jsonObject
.
put
(
"cardId"
,
cardId1
);
jsonObject
.
put
(
"cardSnapshotId"
,
cardId1
);
jsonObject
.
put
(
"memberId"
,
memberId
);
jsonObject
.
put
(
"memo"
,
"自动化买秒杀活动会员卡"
);
jsonObject
.
put
(
"receivableAmount"
,
"0.00"
);
jsonObject
.
put
(
"studioId"
,
xmAppApi
.
getLoginInfo
().
getStudioId
());
jsonObject
.
put
(
"objectId"
,
RandomStringUtil
.
randomString
(
16
));
jsonObject
.
put
(
"depositCardId"
,
null
);
jsonObject
.
put
(
"depositAmount"
,
"0.00"
);
jsonObject
.
put
(
"commodityCardType"
,
"MEMBER_CARD"
);
jsonObject
.
put
(
"activityId"
,
activeid1
);
jsonObject
.
put
(
"activityAmount"
,
1
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
jsonObject
.
toString
(),
headers
).
assetsSuccess
(
true
);
String
voucherId
=
xmAppApi
.
getBodyInJSON
().
getJSONObject
(
"result"
).
getString
(
"voucherId"
);
//订单ID
int
after
=
Integer
.
parseInt
(
XMJSONPath
.
readPath
(
CardTimeSaleMinTools
.
findTenantCardDetailById
(
cardId1
,
activeid1
,
memberId
),
"$.result.activityVO.salesVolumeShow"
));
//参与秒杀活动后,已秒数量
Assert
.
assertEquals
(
after
,
before
+
1
);
//参与秒杀活动后,秒杀人数+1
Thread
.
sleep
(
3000
);
//校验C端订单详情
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
orderCTools
.
getDetail
(
voucherId
),
"$.result.state"
),
"PAID"
,
"创建签单订单成功,但订单状态不是已完成"
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
orderCTools
.
getDetail
(
voucherId
),
"$.result.source"
),
"ONLINE_MALL"
,
"C端创建的签单订单,订单来源非会员创建"
);
cardTools
.
getUserMemberCardList
(
memberId
,
"MEMBER"
,
info
);
String
memberAccountCardId
=
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result[0].id"
);
cardTools
.
memberCardFindDetailById
(
memberAccountCardId
,
info
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.tradeOrderId"
),
voucherId
,
"B端售卖记录非秒杀活动对应会员卡的记录"
);
//断言B端第一条的售卖记录的订单为目标售卖记录
orderTools
.
discard
(
voucherId
,
"其他"
,
"自动化作废秒杀订单"
,
info
);
int
after1
=
Integer
.
parseInt
(
XMJSONPath
.
readPath
(
CardTimeSaleMinTools
.
findTenantCardDetailById
(
cardId1
,
activeid1
,
memberId
),
"$.result.activityVO.salesVolumeShow"
));
//作废订单后,秒杀数量
Assert
.
assertEquals
(
after1
,
before
);
//初始秒杀数量和作废后秒杀数量一致
}
}
src/main/java/com/xiaomai/cases/polar/memberCard/MemberCardTimeSale/Testflashsaleedit.java
View file @
3c6a31e0
...
@@ -43,7 +43,7 @@ public class Testflashsaleedit extends BaseTestImpl {
...
@@ -43,7 +43,7 @@ public class Testflashsaleedit extends BaseTestImpl {
JSONObject
result
=
MemberCardTimeSaleTools
.
getStudioActivityPage1
(
""
);
//所有活动条数;
JSONObject
result
=
MemberCardTimeSaleTools
.
getStudioActivityPage1
(
""
);
//所有活动条数;
int
beforecount
=
Integer
.
parseInt
(
result
.
getJSONObject
(
"result"
).
getString
(
"total"
));
int
beforecount
=
Integer
.
parseInt
(
result
.
getJSONObject
(
"result"
).
getString
(
"total"
));
String
title
=
"秒杀活动"
+
TimeUtils
.
getCurrentTime
();
String
title
=
"秒杀活动"
+
TimeUtils
.
getCurrentTime
();
String
activeid
=
MemberCardTimeSaleTools
.
create
(
cardId
,
title
,
true
).
getString
(
"result"
);
//创建并发布一个秒杀活动
String
activeid
=
MemberCardTimeSaleTools
.
create
(
cardId
,
title
,
true
,
TimeUtils
.
getTodayEndTime
(),
TimeUtils
.
getTodayTime
()
).
getString
(
"result"
);
//创建并发布一个秒杀活动
JSONObject
result1
=
MemberCardTimeSaleTools
.
getStudioActivityPage1
(
""
);
//所有活动条数;
JSONObject
result1
=
MemberCardTimeSaleTools
.
getStudioActivityPage1
(
""
);
//所有活动条数;
int
aftercount1
=
Integer
.
parseInt
(
result1
.
getJSONObject
(
"result"
).
getString
(
"total"
));
int
aftercount1
=
Integer
.
parseInt
(
result1
.
getJSONObject
(
"result"
).
getString
(
"total"
));
...
...
src/main/java/com/xiaomai/cases/polar/utils/Entity/SignatureVO.java
View file @
3c6a31e0
...
@@ -24,6 +24,7 @@ public class SignatureVO {
...
@@ -24,6 +24,7 @@ public class SignatureVO {
private
String
extAttrs
;
private
String
extAttrs
;
//回调地址
//回调地址
private
String
callback
;
private
String
callback
;
private
String
securityToken
;
private
String
algorithm
;
private
String
algorithm
;
...
@@ -107,4 +108,14 @@ public class SignatureVO {
...
@@ -107,4 +108,14 @@ public class SignatureVO {
public
void
setAlgorithm
(
String
algorithm
)
{
public
void
setAlgorithm
(
String
algorithm
)
{
this
.
algorithm
=
algorithm
;
this
.
algorithm
=
algorithm
;
}
}
public
String
getSecurityToken
()
{
return
securityToken
;
}
public
SignatureVO
setSecurityToken
(
String
securityToken
)
{
this
.
securityToken
=
securityToken
;
return
this
;
}
}
}
src/main/java/com/xiaomai/cases/polar/utils/ResourceUtil.java
View file @
3c6a31e0
...
@@ -160,6 +160,7 @@ public class ResourceUtil {
...
@@ -160,6 +160,7 @@ public class ResourceUtil {
formFields
.
put
(
"q-signature"
,
signatureVO
.
getSignature
());
formFields
.
put
(
"q-signature"
,
signatureVO
.
getSignature
());
formFields
.
put
(
"success_action_status"
,
RESPONSE_STATUS
);
formFields
.
put
(
"success_action_status"
,
RESPONSE_STATUS
);
formFields
.
put
(
"x-cos-callback"
,
signatureVO
.
getCallback
());
formFields
.
put
(
"x-cos-callback"
,
signatureVO
.
getCallback
());
formFields
.
put
(
"x-cos-security-token"
,
signatureVO
.
getSecurityToken
());
formFields
.
put
(
"q-key-time"
,
signatureVO
.
getExtAttrs
());
formFields
.
put
(
"q-key-time"
,
signatureVO
.
getExtAttrs
());
// 根据以上表单参数,构造最开始的body部分
// 根据以上表单参数,构造最开始的body部分
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment