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
f05da95d
Commit
f05da95d
authored
Jul 29, 2024
by
DuJunLi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
解决线上报错问题,增加定向发放优惠券case
parent
d479af9b
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
298 additions
and
51 deletions
+298
-51
src/main/java/com/xiaomai/cases/polar/coupon/CouponTools.java
+84
-2
src/main/java/com/xiaomai/cases/polar/coupon/TestBatchSendCouponToMember.java
+112
-0
src/main/java/com/xiaomai/cases/polar/coupon/TestCreateCoupon.java
+9
-0
src/main/java/com/xiaomai/cases/polar/schedule/camp/TestDelCampScheduleItem.java
+25
-7
src/main/java/com/xiaomai/cases/polar/schedule/camp/TestEditCampScheduleItem.java
+4
-4
src/main/java/com/xiaomai/cases/polar/schedule/group/TestCreateGroupRuleSchedule.java
+25
-12
src/main/java/com/xiaomai/cases/polar/schedule/group/TestDelGroupScheduleItem.java
+18
-10
src/main/java/com/xiaomai/cases/polar/schedule/group/TestEditGroupSchedule.java
+13
-8
src/main/java/com/xiaomai/cases/polar/training/TestDoForceOpenTraining.java
+4
-4
src/main/java/com/xiaomai/cases/polar/training/TestEditTraining.java
+1
-1
src/main/java/com/xiaomai/cases/polar/training/TrainingTools.java
+3
-3
No files found.
src/main/java/com/xiaomai/cases/polar/coupon/CouponTools.java
View file @
f05da95d
...
@@ -88,8 +88,6 @@ public class CouponTools extends BaseTestImpl {
...
@@ -88,8 +88,6 @@ public class CouponTools extends BaseTestImpl {
body
.
put
(
"validPeriodType"
,
validPeriodType
);
body
.
put
(
"validPeriodType"
,
validPeriodType
);
if
(
validPeriodType
.
equals
(
"RELATIVE"
))
{
//有效期:领取后生效
if
(
validPeriodType
.
equals
(
"RELATIVE"
))
{
//有效期:领取后生效
body
.
put
(
"relativeDay"
,
1
);
//使用有效期:领取后 1天内
body
.
put
(
"relativeDay"
,
1
);
//使用有效期:领取后 1天内
/* body.put("validPeriodStartTime", "");
body.put("validPeriodEndTime","");*/
}
}
if
(
validPeriodType
.
equals
(
"ABSOLUTE"
))
{
//有效期:固定时间
if
(
validPeriodType
.
equals
(
"ABSOLUTE"
))
{
//有效期:固定时间
body
.
put
(
"validPeriodStartTime"
,
CommUtil
.
oneKeyGetAddDay
(
1
));
//有效期的开始时间:明天的0点
body
.
put
(
"validPeriodStartTime"
,
CommUtil
.
oneKeyGetAddDay
(
1
));
//有效期的开始时间:明天的0点
...
@@ -103,6 +101,89 @@ public class CouponTools extends BaseTestImpl {
...
@@ -103,6 +101,89 @@ public class CouponTools extends BaseTestImpl {
return
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result"
);
return
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result"
);
}
}
/**
* 查看优惠券列表
* @param nameLike 全局搜索中 根据优惠券名称搜索
* @param status 列表中根据优惠券状态搜索
*/
public
void
getStudioCouponList
(
String
nameLike
,
String
status
){
setUP
(
"API_getStudioCouponList"
);
JSONObject
body
=
new
JSONObject
();
body
.
put
(
"operatorId"
,
dataApi
.
getLoginInfo
().
getAdminId
());
body
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
body
.
put
(
"brandId"
,
dataApi
.
getLoginInfo
().
getBrandId
());
body
.
put
(
"current"
,
0
);
body
.
put
(
"size"
,
500
);
if
(
null
!=
nameLike
||
!
nameLike
.
isEmpty
())
{
body
.
put
(
"nameLike"
,
nameLike
);
}
if
(
null
!=
status
||
!
status
.
isEmpty
())
{
body
.
put
(
"status"
,
status
);
}
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
body
.
toString
(),
dataheadrs
).
assetsSuccess
(
true
);
}
/**
* 查看优惠券详情
* @param couponId
*/
public
void
getCouponDetail
(
String
couponId
){
setUP
(
"API_getCouponDetail"
);
JSONObject
body
=
new
JSONObject
();
body
.
put
(
"operatorId"
,
dataApi
.
getLoginInfo
().
getAdminId
());
body
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
body
.
put
(
"brandId"
,
dataApi
.
getLoginInfo
().
getBrandId
());
body
.
put
(
"id"
,
couponId
);
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
body
.
toString
(),
dataheadrs
).
assetsSuccess
(
true
);
}
/**
* 失效优惠券
* @param couponId
*/
public
void
InvalidCoupon
(
String
couponId
){
setUP
(
"API_ InvalidCoupon"
);
JSONObject
body
=
new
JSONObject
();
body
.
put
(
"operatorId"
,
dataApi
.
getLoginInfo
().
getAdminId
());
body
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
body
.
put
(
"brandId"
,
dataApi
.
getLoginInfo
().
getBrandId
());
body
.
put
(
"id"
,
couponId
);
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
body
.
toString
(),
dataheadrs
).
assetsSuccess
(
true
);
}
/**
* 修改优惠券的剩余数量
* @param couponId 优惠券ID
* @param inventory 修改后的剩余数量
*/
public
void
modifyCouponInventory
(
String
couponId
,
int
inventory
){
setUP
(
"API_modifyCouponInventory"
);
JSONObject
body
=
new
JSONObject
();
body
.
put
(
"operatorId"
,
dataApi
.
getLoginInfo
().
getAdminId
());
body
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
body
.
put
(
"brandId"
,
dataApi
.
getLoginInfo
().
getBrandId
());
body
.
put
(
"id"
,
couponId
);
body
.
put
(
"inventory"
,
inventory
);
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
body
.
toString
(),
dataheadrs
).
assetsSuccess
(
true
);
}
/**
* 任务中心
*/
public
void
getStudioBatchTaskPage
(){
setUP
(
"API_getStudioBatchTaskPage"
);
JSONObject
body
=
new
JSONObject
();
body
.
put
(
"operatorId"
,
dataApi
.
getLoginInfo
().
getAdminId
());
body
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
body
.
put
(
"brandId"
,
dataApi
.
getLoginInfo
().
getBrandId
());
body
.
put
(
"current"
,
0
);
body
.
put
(
"size"
,
500
);
dataApi
.
doRequest
(
RequestType
.
JSON
,
dataparams
,
body
.
toString
(),
dataheadrs
).
assetsSuccess
(
true
);
}
}
}
\ No newline at end of file
src/main/java/com/xiaomai/cases/polar/coupon/TestBatchSendCouponToMember.java
0 → 100644
View file @
f05da95d
package
com
.
xiaomai
.
cases
.
polar
.
coupon
;
import
com.alibaba.fastjson.JSONObject
;
import
com.xiaomai.basetest.BaseTestImpl
;
import
com.xiaomai.cases.polar.member.Tools
;
import
com.xiaomai.cases.polar.training.TrainingTools
;
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.XMJSONPath
;
import
org.testng.Assert
;
import
org.testng.annotations.BeforeClass
;
import
org.testng.annotations.Test
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* 测试定向发放优惠券
*
* @author adu
* data 2024/7/27 17:16
*/
public
class
TestBatchSendCouponToMember
extends
BaseTestImpl
{
@Resource
(
name
=
"couponTools"
)
CouponTools
couponTools
;
String
memberId
=
""
;
@Resource
(
name
=
"tools"
)
Tools
tools
;
@Resource
(
name
=
"trainingTools"
)
TrainingTools
trainingTools
;
String
title
=
""
;
String
couponId
=
""
;
@BeforeClass
public
void
beforeTest
()
{
setTestInfo
(
ApiModule
.
Polar_Coupon
,
"API_batchSendCoupon"
,
LoginAccount
.
ADU_PROD
,
Terminal
.
B
,
"adu"
);
super
.
beforeTest
();
}
@Test
(
description
=
"定向发放优惠券 to 会员"
)
public
void
testBatchSendCouponToMember
()
throws
InterruptedException
{
//1.创建1个新的优惠券
List
<
String
>
memberStatusLimits
=
new
ArrayList
<>();
memberStatusLimits
.
add
(
"POTENTIAL"
);
memberStatusLimits
.
add
(
"NORMAL"
);
memberStatusLimits
.
add
(
"HISTORY"
);
title
=
"有门槛限领适用全部"
+
RandomStringUtil
.
randomString
(
3
);
couponId
=
couponTools
.
createCoupon
(
"THRESHOLD"
,
"FIXED"
,
memberStatusLimits
,
title
,
true
,
"CERTAIN"
,
2
,
"RELATIVE"
,
title
+
"优惠方式选择金额,满10元可以减10元,领取后1天内有效"
);
//2.创建成功后,列表增加一条刚新建的优惠券,搜索可领取优惠券
couponTools
.
getStudioCouponList
(
""
,
"CLAIMABLE"
);
Long
goalData
=
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result.records"
).
toJavaList
(
JSONObject
.
class
).
stream
().
filter
(
e
->
e
.
getString
(
"id"
).
equals
(
couponId
)).
count
();
Assert
.
assertTrue
(
goalData
==
1
,
"刚创建的优惠券在列表中搜索,后端没返回数据"
);
//3.查看优惠券详情,check 优惠券的总数量,剩余数量,已发放数量
couponTools
.
getCouponDetail
(
couponId
);
int
quantityBefore
=
Integer
.
valueOf
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.quantity"
));
int
inventoryBefore
=
Integer
.
valueOf
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.inventory"
));
int
receivedBefore
=
Integer
.
valueOf
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.received"
));
//4.操作定向发放优惠券
//搜索目标会员
String
phone
=
"17682302508"
;
memberId
=
trainingTools
.
searchTargerMember
(
phone
);
if
(
memberId
.
isEmpty
())
{
memberId
=
tools
.
create
(
"测试机吴彦祖"
,
phone
).
getString
(
"result"
);
}
JSONObject
body
=
new
JSONObject
();
List
<
String
>
receiverIds
=
new
ArrayList
<>();
receiverIds
.
add
(
memberId
);
body
.
put
(
"operatorId"
,
xmAppApi
.
getLoginInfo
().
getAdminId
());
body
.
put
(
"studioId"
,
xmAppApi
.
getLoginInfo
().
getStudioId
());
body
.
put
(
"brandId"
,
xmAppApi
.
getLoginInfo
().
getBrandId
());
body
.
put
(
"couponId"
,
couponId
);
body
.
put
(
"receiverIds"
,
receiverIds
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
body
.
toString
(),
headers
).
assetsSuccess
(
true
);
String
taskId
=
XMJSONPath
.
readPath
(
xmAppApi
.
getApi_response
(),
"$.result"
);
//check任务中心生成一条任务
Thread
.
sleep
(
2000
);
couponTools
.
getStudioBatchTaskPage
();
Long
goalTask
=
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result.records"
).
toJavaList
(
JSONObject
.
class
).
stream
().
filter
(
e
->
e
.
getString
(
"id"
).
equals
(
taskId
)).
count
();
Assert
.
assertTrue
(
goalTask
==
1
,
"刚操作的定向发放优惠券给学员,在任务中心查看,后端没返回目标数据"
);
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result.records"
).
toJavaList
(
JSONObject
.
class
).
stream
().
filter
(
e
->
e
.
getString
(
"id"
).
equals
(
taskId
)).
forEach
(
object
->
Assert
.
assertTrue
(
object
.
getInteger
(
"totalNumber"
)
==
1
&&
object
.
getInteger
(
"failNumber"
)
==
0
&&
object
.
getInteger
(
"successNumber"
)
==
1
));
//查看详情
couponTools
.
getCouponDetail
(
couponId
);
Assert
.
assertTrue
(
Integer
.
valueOf
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.quantity"
))==
quantityBefore
,
"优惠券发放给会员后,总数量变化了,应该不变"
);
Assert
.
assertTrue
(
Integer
.
valueOf
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.inventory"
))+
1
==
inventoryBefore
,
"优惠券发放给会员后,剩余库存没减少"
);
Assert
.
assertTrue
(
Integer
.
valueOf
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.received"
))-
1
==
receivedBefore
,
"优惠券发放给会员后,已发放数据不对"
);
}
}
\ No newline at end of file
src/main/java/com/xiaomai/cases/polar/coupon/TestCreateCoupon.java
View file @
f05da95d
package
com
.
xiaomai
.
cases
.
polar
.
coupon
;
package
com
.
xiaomai
.
cases
.
polar
.
coupon
;
import
com.alibaba.fastjson.JSONObject
;
import
com.xiaomai.basetest.BaseTestImpl
;
import
com.xiaomai.basetest.BaseTestImpl
;
import
com.xiaomai.enums.ApiModule
;
import
com.xiaomai.enums.ApiModule
;
import
com.xiaomai.enums.LoginAccount
;
import
com.xiaomai.enums.LoginAccount
;
import
com.xiaomai.enums.Terminal
;
import
com.xiaomai.enums.Terminal
;
import
com.xiaomai.utils.RandomStringUtil
;
import
com.xiaomai.utils.RandomStringUtil
;
import
com.xiaomai.utils.XMJSONPath
;
import
org.testng.Assert
;
import
org.testng.annotations.BeforeClass
;
import
org.testng.annotations.BeforeClass
;
import
org.testng.annotations.Test
;
import
org.testng.annotations.Test
;
...
@@ -44,6 +47,12 @@ public class TestCreateCoupon extends BaseTestImpl {
...
@@ -44,6 +47,12 @@ public class TestCreateCoupon extends BaseTestImpl {
couponIdA
=
couponTools
.
createCoupon
(
"THRESHOLD"
,
"FIXED"
,
memberStatusLimitsA
,
titleA
,
true
,
couponIdA
=
couponTools
.
createCoupon
(
"THRESHOLD"
,
"FIXED"
,
memberStatusLimitsA
,
titleA
,
true
,
"CERTAIN"
,
2
,
"RELATIVE"
,
titleA
+
"优惠方式选择金额,满10元可以减10元,领取后1天内有效"
);
"CERTAIN"
,
2
,
"RELATIVE"
,
titleA
+
"优惠方式选择金额,满10元可以减10元,领取后1天内有效"
);
couponTools
.
getStudioCouponList
(
titleA
,
""
);
Long
goalData
=
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result.records"
).
toJavaList
(
JSONObject
.
class
).
stream
().
filter
(
e
->
e
.
getString
(
"id"
).
equals
(
couponIdA
)).
count
();
Assert
.
assertTrue
(
goalData
==
1
,
"刚创建的优惠券在全局搜索中根据优惠券名称搜索,后端没返回数据"
);
titleB
=
"无门槛不限领适用部分"
+
RandomStringUtil
.
randomString
(
2
);
titleB
=
"无门槛不限领适用部分"
+
RandomStringUtil
.
randomString
(
2
);
couponIdB
=
couponTools
.
createCoupon
(
"WITHOUT"
,
"WITHOUT"
,
memberStatusLimitsB
,
titleB
,
false
,
couponIdB
=
couponTools
.
createCoupon
(
"WITHOUT"
,
"WITHOUT"
,
memberStatusLimitsB
,
titleB
,
false
,
"DISCOUNT"
,
2
,
"ABSOLUTE"
,
titleB
+
"优惠方式选择折扣,8.8折,适用有效期明天~(当前时间+5天)"
);
"DISCOUNT"
,
2
,
"ABSOLUTE"
,
titleB
+
"优惠方式选择折扣,8.8折,适用有效期明天~(当前时间+5天)"
);
...
...
src/main/java/com/xiaomai/cases/polar/schedule/camp/TestDelCampScheduleItem.java
View file @
f05da95d
...
@@ -57,10 +57,10 @@ public class TestDelCampScheduleItem extends SelectTargetTrainingCampAndGetInfo{
...
@@ -57,10 +57,10 @@ public class TestDelCampScheduleItem extends SelectTargetTrainingCampAndGetInfo{
}
}
@Test
(
description
=
"删除当前课次"
)
@Test
(
description
=
"删除当前课次"
)
public
void
testDelCurrentCampScheduleItem
(){
public
void
testDelCurrentCampScheduleItem
(){
//获取下周日课次ID
//获取下周日课次ID
(只删除匹配到ruldId的课次)
Set
<
String
>
scheduleIds7
=
campScheduleTools
.
getCampTableDate
(
13
);
Set
<
String
>
scheduleIds7
=
campScheduleTools
.
getCampTableDate
(
13
,
ruldId
);
if
(
scheduleIds7
.
size
()
!=
0
&&
scheduleIds7
!=
null
){
if
(
scheduleIds7
.
size
()
!=
0
&&
scheduleIds7
!=
null
){
//删除下周日所有的课次
//删除
本次规则创建的
下周日所有的课次
scheduleIds7
.
stream
().
forEach
(
scheduleId
->
{
scheduleIds7
.
stream
().
forEach
(
scheduleId
->
{
JSONObject
body
=
new
JSONObject
();
JSONObject
body
=
new
JSONObject
();
body
.
put
(
"operatorId"
,
xmAppApi
.
getLoginInfo
().
getAdminId
());
body
.
put
(
"operatorId"
,
xmAppApi
.
getLoginInfo
().
getAdminId
());
...
@@ -71,11 +71,18 @@ public class TestDelCampScheduleItem extends SelectTargetTrainingCampAndGetInfo{
...
@@ -71,11 +71,18 @@ public class TestDelCampScheduleItem extends SelectTargetTrainingCampAndGetInfo{
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
body
.
toString
(),
headers
).
assetsSuccess
(
true
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
body
.
toString
(),
headers
).
assetsSuccess
(
true
);
});
});
//删除成功后check 下周日课表是否
有数据
//删除成功后check 下周日课表是否
包含删除的课次
String
startDate
=
CommUtil
.
oneKeyGetNextWeekXDay
(
13
);
//下周日00点时间
String
startDate
=
CommUtil
.
oneKeyGetNextWeekXDay
(
13
);
//下周日00点时间
String
endDate
=
CommUtil
.
oneKeyGetNextWeekEndXDay
(
7
);
//下周日23:59
String
endDate
=
CommUtil
.
oneKeyGetNextWeekEndXDay
(
7
);
//下周日23:59
campScheduleTools
.
getCampScheduleTable
(
startDate
,
endDate
);
campScheduleTools
.
getCampScheduleTable
(
startDate
,
endDate
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.totalCount"
),
"0"
);
Long
goalCount
=
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result.timetableGroups"
).
toJavaList
(
JSONObject
.
class
).
stream
()
.
flatMap
(
e
->
e
.
getJSONArray
(
"timetableList"
).
toJavaList
(
JSONObject
.
class
).
stream
())
//对过滤出的数据再次取目标数据重新组合成一个新的数据流
.
filter
(
e
->
null
!=
e
.
getString
(
"ruleId"
))
.
filter
(
e
->
e
.
getString
(
"ruleId"
).
equals
(
ruldId
))
.
map
(
e
->
e
.
getString
(
"scheduleId"
)).
count
();
//获取scheduleId 的数量
Assert
.
assertTrue
(
goalCount
==
0
,
"删除当前课次后,再去课表中查看,后端仍然返回数据"
);
}
}
}
}
...
@@ -83,9 +90,9 @@ public class TestDelCampScheduleItem extends SelectTargetTrainingCampAndGetInfo{
...
@@ -83,9 +90,9 @@ public class TestDelCampScheduleItem extends SelectTargetTrainingCampAndGetInfo{
@Test
(
description
=
"删除当前及后续课次"
,
priority
=
1
)
@Test
(
description
=
"删除当前及后续课次"
,
priority
=
1
)
public
void
testDelCurrentAndSubsequentCampSchedule
()
{
public
void
testDelCurrentAndSubsequentCampSchedule
()
{
//获取下周六课次ID
//获取下周六课次ID
Set
<
String
>
scheduleIds6
=
campScheduleTools
.
getCampTableDate
(
12
);
Set
<
String
>
scheduleIds6
=
campScheduleTools
.
getCampTableDate
(
12
,
ruldId
);
if
(
scheduleIds6
.
size
()
!=
0
&&
scheduleIds6
!=
null
){
if
(
scheduleIds6
.
size
()
!=
0
&&
scheduleIds6
!=
null
){
//删除下周
日
所有的课次
//删除下周
六即后续
所有的课次
scheduleIds6
.
stream
().
forEach
(
scheduleId
->
{
scheduleIds6
.
stream
().
forEach
(
scheduleId
->
{
JSONObject
body
=
new
JSONObject
();
JSONObject
body
=
new
JSONObject
();
body
.
put
(
"operatorId"
,
xmAppApi
.
getLoginInfo
().
getAdminId
());
body
.
put
(
"operatorId"
,
xmAppApi
.
getLoginInfo
().
getAdminId
());
...
@@ -99,8 +106,19 @@ public class TestDelCampScheduleItem extends SelectTargetTrainingCampAndGetInfo{
...
@@ -99,8 +106,19 @@ public class TestDelCampScheduleItem extends SelectTargetTrainingCampAndGetInfo{
//删除成功后check从下周六到排课结束日期课表是否有数据
//删除成功后check从下周六到排课结束日期课表是否有数据
String
startDate
=
CommUtil
.
oneKeyGetNextWeekXDay
(
12
);
//下周六00点时间
String
startDate
=
CommUtil
.
oneKeyGetNextWeekXDay
(
12
);
//下周六00点时间
campScheduleTools
.
getCampScheduleTable
(
startDate
,
super
.
openEndDate
);
campScheduleTools
.
getCampScheduleTable
(
startDate
,
super
.
openEndDate
);
if
(
Integer
.
valueOf
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.totalCount"
))>
0
){
Long
goalCount
=
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result.timetableGroups"
).
toJavaList
(
JSONObject
.
class
).
stream
()
.
flatMap
(
e
->
e
.
getJSONArray
(
"timetableList"
).
toJavaList
(
JSONObject
.
class
).
stream
())
//对过滤出的数据再次取目标数据重新组合成一个新的数据流
.
filter
(
e
->
null
!=
e
.
getString
(
"ruleId"
))
.
filter
(
e
->
e
.
getString
(
"ruleId"
).
equals
(
ruldId
)).
count
();
Assert
.
assertTrue
(
goalCount
==
0
,
"删除当前课次后,再去课表中查看,后端仍然返回数据"
);
}
else
{
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.totalCount"
),
"0"
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.totalCount"
),
"0"
);
}
//删除成功后,check对应训练营活动的已排课次数是否同步变更
//删除成功后,check对应训练营活动的已排课次数是否同步变更
int
delLoopNum
=
campScheduleTools
.
queryExpectedLoopNum
(
startDate
,
super
.
openEndDate
,
weekdaysList
);
int
delLoopNum
=
campScheduleTools
.
queryExpectedLoopNum
(
startDate
,
super
.
openEndDate
,
weekdaysList
);
//查看日程,获取原规则中展示的训练营已排课课次数,原来已排课课次数-删除的已排课课次数
//查看日程,获取原规则中展示的训练营已排课课次数,原来已排课课次数-删除的已排课课次数
...
...
src/main/java/com/xiaomai/cases/polar/schedule/camp/TestEditCampScheduleItem.java
View file @
f05da95d
...
@@ -77,8 +77,8 @@ public class TestEditCampScheduleItem extends SelectTargetTrainingCampAndGetInfo
...
@@ -77,8 +77,8 @@ public class TestEditCampScheduleItem extends SelectTargetTrainingCampAndGetInfo
@Test
(
description
=
"编辑当前课次"
)
@Test
(
description
=
"编辑当前课次"
)
public
void
testEditCurrentCampSchedule
()
{
public
void
testEditCurrentCampSchedule
()
{
//获取下周日课次ID
//获取
本次创建规则中
下周日课次ID
scheduleIdsN
=
campScheduleTools
.
getCampTableDate
(
13
);
scheduleIdsN
=
campScheduleTools
.
getCampTableDate
(
13
,
ruldId
);
if
(
scheduleIdsN
.
size
()
!=
0
&&
scheduleIdsN
!=
null
)
{
if
(
scheduleIdsN
.
size
()
!=
0
&&
scheduleIdsN
!=
null
)
{
scheduleIdsN
.
stream
().
forEach
(
scheduleId
->
{
scheduleIdsN
.
stream
().
forEach
(
scheduleId
->
{
...
@@ -117,7 +117,7 @@ public class TestEditCampScheduleItem extends SelectTargetTrainingCampAndGetInfo
...
@@ -117,7 +117,7 @@ public class TestEditCampScheduleItem extends SelectTargetTrainingCampAndGetInfo
}
}
@Test
(
description
=
"编辑当前及后续课次"
,
priority
=
1
)
@Test
(
description
=
"编辑当前及后续课次"
,
priority
=
1
)
public
void
testEditCurrentAndSubsequentSchedule
()
{
public
void
testEditCurrentAndSubsequent
Camp
Schedule
()
{
//获取存量场地
//获取存量场地
List
<
String
>
venueAreaIds
=
groupScheduleTools
.
getStockArea
(
"流星花园秘密基地"
);
List
<
String
>
venueAreaIds
=
groupScheduleTools
.
getStockArea
(
"流星花园秘密基地"
);
//获取下下周二的课次ID
//获取下下周二的课次ID
...
@@ -144,7 +144,7 @@ public class TestEditCampScheduleItem extends SelectTargetTrainingCampAndGetInfo
...
@@ -144,7 +144,7 @@ public class TestEditCampScheduleItem extends SelectTargetTrainingCampAndGetInfo
}
}
//获取下周六的课次ID
//获取下周六的课次ID
Set
<
String
>
scheduleIds6
=
campScheduleTools
.
getCampTableDate
(
12
);
Set
<
String
>
scheduleIds6
=
campScheduleTools
.
getCampTableDate
(
12
,
ruldId
);
if
(
scheduleIds6
.
size
()
!=
0
&&
scheduleIds6
!=
null
)
{
if
(
scheduleIds6
.
size
()
!=
0
&&
scheduleIds6
!=
null
)
{
scheduleIds6
.
stream
().
forEach
(
scheduleId
->
{
scheduleIds6
.
stream
().
forEach
(
scheduleId
->
{
//编辑下周六及后续课次
//编辑下周六及后续课次
...
...
src/main/java/com/xiaomai/cases/polar/schedule/group/TestCreateGroupRuleSchedule.java
View file @
f05da95d
package
com
.
xiaomai
.
cases
.
polar
.
schedule
.
group
;
package
com
.
xiaomai
.
cases
.
polar
.
schedule
.
group
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.xiaomai.basetest.BaseTestImpl
;
import
com.xiaomai.basetest.BaseTestImpl
;
import
com.xiaomai.cases.polar.course.CourseTools
;
import
com.xiaomai.cases.polar.course.CourseTools
;
import
com.xiaomai.cases.polar.setting.courseCategory.CourseCategoryTools
;
import
com.xiaomai.cases.polar.setting.courseCategory.CourseCategoryTools
;
...
@@ -21,6 +22,7 @@ import java.util.List;
...
@@ -21,6 +22,7 @@ import java.util.List;
/**
/**
* 创建排课
* 创建排课
*
* @author adu
* @author adu
* data 2024/6/12 15:54
* data 2024/6/12 15:54
*/
*/
...
@@ -79,30 +81,42 @@ public class TestCreateGroupRuleSchedule extends BaseTestImpl {
...
@@ -79,30 +81,42 @@ public class TestCreateGroupRuleSchedule extends BaseTestImpl {
List
<
String
>
assistCoachIdS
=
groupScheduleTools
.
getStudioAdminId
(
assistCoachIds
);
List
<
String
>
assistCoachIdS
=
groupScheduleTools
.
getStudioAdminId
(
assistCoachIds
);
//1-创建排课日程
//1-创建排课日程
groupScheduleTools
.
createGroupRuleSchedule
(
courseId
,
chiefCoachIdS
,
todayStartTimeTamp
,
endDateTimeTamp
,
venueAreaIds
,
assistCoachIdS
,
false
,
1
,
480
);
groupScheduleTools
.
createGroupRuleSchedule
(
courseId
,
chiefCoachIdS
,
todayStartTimeTamp
,
endDateTimeTamp
,
venueAreaIds
,
assistCoachIdS
,
false
,
1
,
480
);
//2-查询排课日程
//2-查询排课日程
JSONArray
result
=
groupScheduleTools
.
getGroupRuleScheduleList
(
courseId
,
chiefCoachIdS
);
JSONArray
result
=
groupScheduleTools
.
getGroupRuleScheduleList
(
courseId
,
chiefCoachIdS
);
String
ruldId
=
XMJSONPath
.
readPath
(
result
.
getJSONObject
(
0
),
"$.ruleId"
);
// 日程列表中新增一条刚创建的规则,匹配到对应的ruldId
Long
goalRuld
=
result
.
toJavaList
(
JSONObject
.
class
).
stream
().
filter
(
e
->
e
.
getString
(
"ruleId"
).
equals
(
ruldId
)).
count
();
Assert
.
assertTrue
(
goalRuld
==
1
);
//查看今天的课表,获取刚创建的日程中对应的课次ID
groupScheduleTools
.
getGroupScheduleTable
(
Long
.
valueOf
(
todayStartTimeTamp
),
Long
.
valueOf
(
todayEndDateTimeTamp
),
courseId
);
JSONArray
array
=
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result.timetableGroups"
);
String
scheduleId
=
array
.
toJavaList
(
JSONObject
.
class
).
stream
()
.
flatMap
(
e
->
e
.
getJSONArray
(
"timetableList"
).
toJavaList
(
JSONObject
.
class
).
stream
())
.
filter
(
e
->
null
!=
e
.
getString
(
"ruleId"
))
.
filter
(
e
->
e
.
getString
(
"ruleId"
).
equals
(
ruldId
))
.
map
(
e
->
e
.
getString
(
"scheduleId"
))
//获取scheduleId
.
findFirst
().
orElse
(
null
);
Assert
.
assertTrue
(
scheduleId
!=
null
||!
scheduleId
.
isEmpty
(),
"刚创建的规则中,没查询到今天对应的课次"
);
Assert
.
assertTrue
(
result
.
size
()
>=
1
);
//创建今日待上课的排课后再查询今日待上课的数据
//创建今日待上课的排课后再查询今日待上课的数据
int
num1
=
homeTools
.
queryTodaySchedule
().
getJSONArray
(
"result"
).
size
();
int
num1
=
homeTools
.
queryTodaySchedule
().
getJSONArray
(
"result"
).
size
();
Assert
.
assertEquals
(
num1
,
num
+
1
);
Assert
.
assertEquals
(
num1
,
num
+
1
);
//统计查询到的目标日程数量
groupScheduleTools
.
delGroupRuleSchedule
(
ruldId
,
true
);
int
size
=
result
.
size
();
String
ruldId
=
XMJSONPath
.
readPath
(
result
.
getJSONObject
(
0
),
"$.ruleId"
);
groupScheduleTools
.
delGroupRuleSchedule
(
ruldId
,
true
);
Thread
.
sleep
(
1000
);
Thread
.
sleep
(
1000
);
JSONArray
result2
=
groupScheduleTools
.
getGroupRuleScheduleList
(
courseId
,
chiefCoachIdS
);
JSONArray
result2
=
groupScheduleTools
.
getGroupRuleScheduleList
(
courseId
,
chiefCoachIdS
);
//获取日程中规则ID=ruleId的日程数量
Long
delRuldCount
=
result2
.
toJavaList
(
JSONObject
.
class
).
stream
().
filter
(
e
->
e
.
getString
(
"ruleId"
).
equals
(
ruldId
)).
count
();
//删除成功后,统计查询到的目标日程数量
是否-1
//删除成功后,统计查询到的目标日程数量
为0
Assert
.
assert
Equals
(
result2
.
size
(),
size
-
1
);
Assert
.
assert
True
(
delRuldCount
==
0
);
}
}
}
}
\ No newline at end of file
src/main/java/com/xiaomai/cases/polar/schedule/group/TestDelGroupScheduleItem.java
View file @
f05da95d
...
@@ -36,9 +36,9 @@ public class TestDelGroupScheduleItem extends UniversalDataScheduling {
...
@@ -36,9 +36,9 @@ public class TestDelGroupScheduleItem extends UniversalDataScheduling {
}
}
@Test
(
description
=
"删除当前课次"
)
@Test
(
description
=
"删除当前课次"
)
public
void
testDelCurrentSchedule
()
{
public
void
testDelCurrent
Group
Schedule
()
{
//获取下周四的课次ID
//获取下周四的课次ID
(匹配到刚创建的规则ID)
Set
<
String
>
scheduleIds
=
groupScheduleTools
.
getTableDate
(
10
);
Set
<
String
>
scheduleIds
=
groupScheduleTools
.
getTableDate
(
10
,
groupRuldId
);
//如果课次ID有值则继续走删除的case
//如果课次ID有值则继续走删除的case
if
(!
scheduleIds
.
isEmpty
())
{
if
(!
scheduleIds
.
isEmpty
())
{
scheduleIds
.
stream
().
forEach
(
scheduleId
->
{
scheduleIds
.
stream
().
forEach
(
scheduleId
->
{
...
@@ -49,20 +49,23 @@ public class TestDelGroupScheduleItem extends UniversalDataScheduling {
...
@@ -49,20 +49,23 @@ public class TestDelGroupScheduleItem extends UniversalDataScheduling {
body
.
put
(
"applyRestRule"
,
false
);
body
.
put
(
"applyRestRule"
,
false
);
body
.
put
(
"scheduleId"
,
scheduleId
);
body
.
put
(
"scheduleId"
,
scheduleId
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
body
.
toString
(),
headers
).
assetsSuccess
(
true
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
body
.
toString
(),
headers
).
assetsSuccess
(
true
);
});
//删除成功后check 下周四课表是否有数据
//删除成功后check 下周四课表是否有数据
groupScheduleTools
.
getGroupScheduleTable
(
Long
.
valueOf
(
CommUtil
.
oneKeyGetNextWeekXDay
(
10
)),
Long
.
valueOf
(
CommUtil
.
oneKeyGetNextWeekEndXDay
(
4
)),
courseId
);
groupScheduleTools
.
getGroupScheduleTable
(
Long
.
valueOf
(
CommUtil
.
oneKeyGetNextWeekXDay
(
10
)),
Long
.
valueOf
(
CommUtil
.
oneKeyGetNextWeekEndXDay
(
4
)),
courseId
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.totalCount"
),
"0"
);
Long
countA
=
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result.timetableGroups"
).
toJavaList
(
JSONObject
.
class
).
stream
()
.
flatMap
(
e
->
e
.
getJSONArray
(
"timetableList"
).
toJavaList
(
JSONObject
.
class
).
stream
())
.
filter
(
e
->
e
.
getString
(
"scheduleId"
).
equals
(
scheduleId
)).
count
();
Assert
.
assertTrue
(
countA
==
0
,
"删除课次后,课表中后端返回数据有问题,目前还能发现数据"
);
});
}
}
}
}
@Test
(
description
=
"删除当前及后续课次"
,
priority
=
1
)
@Test
(
description
=
"删除当前及后续课次"
,
priority
=
1
)
public
void
testDelCurrentAndSubsequentSchedule
()
{
public
void
testDelCurrentAndSubsequent
Group
Schedule
()
{
//获取下周三的课次ID
//获取下周三的课次ID
(匹配到对应的规则ID)
Set
<
String
>
scheduleIds
=
groupScheduleTools
.
getTableDate
(
9
);
Set
<
String
>
scheduleIds
=
groupScheduleTools
.
getTableDate
(
9
,
groupRuldId
);
//如果课次ID有值则继续走删除的case
//如果课次ID有值则继续走删除的case
if
(!
scheduleIds
.
isEmpty
())
{
if
(!
scheduleIds
.
isEmpty
())
{
scheduleIds
.
stream
().
forEach
(
scheduleId
->
{
scheduleIds
.
stream
().
forEach
(
scheduleId
->
{
...
@@ -73,11 +76,16 @@ public class TestDelGroupScheduleItem extends UniversalDataScheduling {
...
@@ -73,11 +76,16 @@ public class TestDelGroupScheduleItem extends UniversalDataScheduling {
body
.
put
(
"applyRestRule"
,
true
);
body
.
put
(
"applyRestRule"
,
true
);
body
.
put
(
"scheduleId"
,
scheduleId
);
body
.
put
(
"scheduleId"
,
scheduleId
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
body
.
toString
(),
headers
).
assetsSuccess
(
true
);
xmAppApi
.
doRequest
(
RequestType
.
JSON
,
params
,
body
.
toString
(),
headers
).
assetsSuccess
(
true
);
});
//删除成功后check 从下周三到下周日课表是否有数据
//删除成功后check 从下周三到下周日课表是否有数据
groupScheduleTools
.
getGroupScheduleTable
(
Long
.
valueOf
(
CommUtil
.
oneKeyGetNextWeekXDay
(
9
)),
Long
.
valueOf
(
CommUtil
.
oneKeyGetNextWeekEndDay
()),
courseId
);
groupScheduleTools
.
getGroupScheduleTable
(
Long
.
valueOf
(
CommUtil
.
oneKeyGetNextWeekXDay
(
9
)),
Long
.
valueOf
(
CommUtil
.
oneKeyGetNextWeekEndDay
()),
courseId
);
Assert
.
assertEquals
(
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.totalCount"
),
"0"
);
Long
countB
=
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result.timetableGroups"
).
toJavaList
(
JSONObject
.
class
).
stream
()
.
flatMap
(
e
->
e
.
getJSONArray
(
"timetableList"
).
toJavaList
(
JSONObject
.
class
).
stream
())
.
filter
(
e
->
null
!=
e
.
getString
(
"ruleId"
))
.
filter
(
e
->
e
.
getString
(
"ruleId"
).
equals
(
groupRuldId
)).
count
();
Assert
.
assertTrue
(
countB
==
0
,
"删除当前及后续课次后,课表中后端返回数据有问题,目前还能发现数据"
);
});
}
}
}
}
...
...
src/main/java/com/xiaomai/cases/polar/schedule/group/TestEditGroupSchedule.java
View file @
f05da95d
...
@@ -28,6 +28,7 @@ import java.util.stream.Collectors;
...
@@ -28,6 +28,7 @@ import java.util.stream.Collectors;
public
class
TestEditGroupSchedule
extends
UniversalDataScheduling
{
public
class
TestEditGroupSchedule
extends
UniversalDataScheduling
{
public
static
Date
now
=
new
Date
();
public
static
Date
now
=
new
Date
();
Set
<
String
>
scheduleIdsN
;
Set
<
String
>
scheduleIdsN
;
String
newGroupRuldId
=
""
;
@BeforeClass
@BeforeClass
...
@@ -39,9 +40,9 @@ public class TestEditGroupSchedule extends UniversalDataScheduling {
...
@@ -39,9 +40,9 @@ public class TestEditGroupSchedule extends UniversalDataScheduling {
}
}
@Test
(
description
=
"编辑当前课次"
)
@Test
(
description
=
"编辑当前课次"
)
public
void
testEditCurrentSchedule
()
{
public
void
testEditCurrent
Group
Schedule
()
{
//获取下周四的课次ID
//获取下周四的课次ID
(匹配到刚创建的规则ID)
scheduleIdsN
=
groupScheduleTools
.
getTableDate
(
10
);
scheduleIdsN
=
groupScheduleTools
.
getTableDate
(
10
,
groupRuldId
);
//如果课次ID有值则继续走删除的case
//如果课次ID有值则继续走删除的case
if
(!
scheduleIdsN
.
isEmpty
())
{
if
(!
scheduleIdsN
.
isEmpty
())
{
scheduleIdsN
.
stream
().
forEach
(
scheduleId
->
{
scheduleIdsN
.
stream
().
forEach
(
scheduleId
->
{
...
@@ -87,9 +88,9 @@ public class TestEditGroupSchedule extends UniversalDataScheduling {
...
@@ -87,9 +88,9 @@ public class TestEditGroupSchedule extends UniversalDataScheduling {
}
}
@Test
(
description
=
"编辑当前及后续课次"
,
priority
=
1
)
@Test
(
description
=
"编辑当前及后续课次"
,
priority
=
1
)
public
void
testEditCurrentAndSubsequentSchedule
()
{
public
void
testEditCurrentAndSubsequent
Group
Schedule
()
{
//获取下周二的课次ID
//获取下周二的课次ID
(匹配到刚创建的规则ID)
Set
<
String
>
scheduleIds
=
groupScheduleTools
.
getTableDate
(
8
);
Set
<
String
>
scheduleIds
=
groupScheduleTools
.
getTableDate
(
8
,
groupRuldId
);
//如果课次ID有值则继续走编辑的case
//如果课次ID有值则继续走编辑的case
if
(!
scheduleIds
.
isEmpty
())
{
if
(!
scheduleIds
.
isEmpty
())
{
scheduleIds
.
stream
().
forEach
(
scheduleId
->
{
scheduleIds
.
stream
().
forEach
(
scheduleId
->
{
...
@@ -121,8 +122,12 @@ public class TestEditGroupSchedule extends UniversalDataScheduling {
...
@@ -121,8 +122,12 @@ public class TestEditGroupSchedule extends UniversalDataScheduling {
//编辑成功后check对应课次详情修改内容是否同步成功
//编辑成功后check对应课次详情修改内容是否同步成功
checkData
(
scheduleId
,
startStamp1
);
checkData
(
scheduleId
,
startStamp1
);
//通过课次详情,活动课次对应的ruldId
newGroupRuldId
=
XMJSONPath
.
readPath
(
dataApi
.
getApi_response
(),
"$.result.ruleId"
);
//查看下周三课次是否同步被修改
//查看下周三课次是否同步被修改
Set
<
String
>
scheduleIdX
=
groupScheduleTools
.
getTableDate
(
9
);
Set
<
String
>
scheduleIdX
=
groupScheduleTools
.
getTableDate
(
9
,
newGroupRuldId
);
String
startStamp2
=
CommUtil
.
getWholeHourTimeStamp
(
9
,
"13:00"
);
String
startStamp2
=
CommUtil
.
getWholeHourTimeStamp
(
9
,
"13:00"
);
if
(!
scheduleIdX
.
isEmpty
())
{
if
(!
scheduleIdX
.
isEmpty
())
{
scheduleIdX
.
stream
().
forEach
(
scheduleId1
->
{
scheduleIdX
.
stream
().
forEach
(
scheduleId1
->
{
...
@@ -135,7 +140,7 @@ public class TestEditGroupSchedule extends UniversalDataScheduling {
...
@@ -135,7 +140,7 @@ public class TestEditGroupSchedule extends UniversalDataScheduling {
});
});
}
}
//获取下周一的课次ID,查看下周一课次是否还是原来的(没被修改,还是原来的规则)
//获取下周一的课次ID,查看下周一课次是否还是原来的(没被修改,还是原来的规则)
Set
<
String
>
scheduleId1
=
groupScheduleTools
.
getTableDate
(
7
);
Set
<
String
>
scheduleId1
=
groupScheduleTools
.
getTableDate
(
7
,
groupRuldId
);
String
startStamp3
=
CommUtil
.
getWholeHourTimeStamp
(
7
,
"13:00"
);
String
startStamp3
=
CommUtil
.
getWholeHourTimeStamp
(
7
,
"13:00"
);
if
(!
scheduleId1
.
isEmpty
())
{
if
(!
scheduleId1
.
isEmpty
())
{
scheduleId1
.
stream
().
forEach
(
scheduleId0
->
{
scheduleId1
.
stream
().
forEach
(
scheduleId0
->
{
...
...
src/main/java/com/xiaomai/cases/polar/training/TestDoForceOpenTraining.java
View file @
f05da95d
...
@@ -38,10 +38,10 @@ public class TestDoForceOpenTraining extends BaseCreateTrainingData {
...
@@ -38,10 +38,10 @@ public class TestDoForceOpenTraining extends BaseCreateTrainingData {
public
void
testForceOpenTraining
()
throws
InterruptedException
{
public
void
testForceOpenTraining
()
throws
InterruptedException
{
//1.创建训练营活动:保存并发布
//1.创建训练营活动:保存并发布
id
=
trainingTools
.
createThenPublishTraining
(
String
.
valueOf
(
currentTimestamp
+
25
000
),
applyEndTime
,
courseId
,
openStartDate
,
id
=
trainingTools
.
createThenPublishTraining
(
String
.
valueOf
(
currentTimestamp
+
30
000
),
applyEndTime
,
courseId
,
openStartDate
,
openEndDate
,
0.01
,
trainingTitle
,
2
,
1
,
trainerListIdS
,
"YES"
);
openEndDate
,
0.01
,
trainingTitle
,
2
,
1
,
trainerListIdS
,
"YES"
);
if
(
id
.
isEmpty
())
{
if
(
id
.
isEmpty
())
{
id
=
trainingTools
.
createThenPublishTraining
(
futureTimestampS
,
applyEndTime
,
courseId
,
openStartDate
,
id
=
trainingTools
.
createThenPublishTraining
(
String
.
valueOf
(
currentTimestamp
+
30000
)
,
applyEndTime
,
courseId
,
openStartDate
,
openEndDate
,
0.01
,
trainingTitle
+
RandomStringUtil
.
randomString
(
3
),
2
,
1
,
trainerListIdS
,
"YES"
);
openEndDate
,
0.01
,
trainingTitle
+
RandomStringUtil
.
randomString
(
3
),
2
,
1
,
trainerListIdS
,
"YES"
);
}
}
//2.查看活动详情,check 活动状态
//2.查看活动详情,check 活动状态
...
@@ -61,12 +61,12 @@ public class TestDoForceOpenTraining extends BaseCreateTrainingData {
...
@@ -61,12 +61,12 @@ public class TestDoForceOpenTraining extends BaseCreateTrainingData {
}
}
//3.创建成功后,全局搜索check
//3.创建成功后,全局搜索check
Thread
.
sleep
(
3
000
);
Thread
.
sleep
(
10
000
);
trainingTools
.
commonSearchTraining
(
trainingTitle
);
trainingTools
.
commonSearchTraining
(
trainingTitle
);
Assert
.
assertTrue
(
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result"
).
size
()
>
0
,
"活动创建后,根据活动名称全局搜索没有数据"
);
Assert
.
assertTrue
(
XMJSONPath
.
getJSONArrayByReadPath
(
dataApi
.
getApi_response
(),
"$.result"
).
size
()
>
0
,
"活动创建后,根据活动名称全局搜索没有数据"
);
Thread
.
sleep
(
10000
);
//延迟1
0秒后,活动达到报名时间(可能状态没同步,定时任务没到时间执行,但是数据库中已是报名中)
Thread
.
sleep
(
20000
);
//延迟2
0秒后,活动达到报名时间(可能状态没同步,定时任务没到时间执行,但是数据库中已是报名中)
//4.对报名中的活动操作立即成营
//4.对报名中的活动操作立即成营
JSONObject
body1
=
new
JSONObject
();
JSONObject
body1
=
new
JSONObject
();
body1
.
put
(
"operatorId"
,
dataApi
.
getLoginInfo
().
getAdminId
());
body1
.
put
(
"operatorId"
,
dataApi
.
getLoginInfo
().
getAdminId
());
...
...
src/main/java/com/xiaomai/cases/polar/training/TestEditTraining.java
View file @
f05da95d
...
@@ -106,7 +106,7 @@ public class TestEditTraining extends BaseCreateTrainingData {
...
@@ -106,7 +106,7 @@ public class TestEditTraining extends BaseCreateTrainingData {
if
(
goalObject
!=
null
){
if
(
goalObject
!=
null
){
String
title
=
goalObject
.
getString
(
"title"
);
String
title
=
goalObject
.
getString
(
"title"
);
String
applyEndTime
=
goalObject
.
getString
(
"applyEndTime"
);
String
applyEndTime
=
goalObject
.
getString
(
"applyEndTime"
);
//
String applyStartTime=goalObject.getString("applyStartTime");
String
applyStartTime
=
goalObject
.
getString
(
"applyStartTime"
);
String
openStartDate
=
goalObject
.
getString
(
"openStartDate"
);
String
openStartDate
=
goalObject
.
getString
(
"openStartDate"
);
String
openEndDate
=
goalObject
.
getString
(
"openEndDate"
);
String
openEndDate
=
goalObject
.
getString
(
"openEndDate"
);
//4.编辑已发布的活动(训练营名称,关联课程,开营时间,总课次数,售价,报名开始时间,报名结束时间不能修改)check不能修改的传值后也不会改变
//4.编辑已发布的活动(训练营名称,关联课程,开营时间,总课次数,售价,报名开始时间,报名结束时间不能修改)check不能修改的传值后也不会改变
...
...
src/main/java/com/xiaomai/cases/polar/training/TrainingTools.java
View file @
f05da95d
...
@@ -26,8 +26,8 @@ public class TrainingTools extends XMBaseTest {
...
@@ -26,8 +26,8 @@ public class TrainingTools extends XMBaseTest {
String
openEndDate0
=
CommUtil
.
getNDayEndTimeTamp
(
2
);
//后天23:59:59
String
openEndDate0
=
CommUtil
.
getNDayEndTimeTamp
(
2
);
//后天23:59:59
long
currentTimestamp
=
System
.
currentTimeMillis
();
long
currentTimestamp
=
System
.
currentTimeMillis
();
// 在当前时间的基础上,加上
20秒(20000毫秒
)
// 在当前时间的基础上,加上
10分钟(1000毫秒*60*10
)
long
futureTimestamp
=
currentTimestamp
+
60000
;
long
futureTimestamp
=
currentTimestamp
+
60000
0
;
String
futureTimestampS
=
String
.
valueOf
(
futureTimestamp
);
String
futureTimestampS
=
String
.
valueOf
(
futureTimestamp
);
/**
/**
...
@@ -109,7 +109,7 @@ public class TrainingTools extends XMBaseTest {
...
@@ -109,7 +109,7 @@ public class TrainingTools extends XMBaseTest {
body
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
// 场馆
body
.
put
(
"studioId"
,
dataApi
.
getLoginInfo
().
getStudioId
());
// 场馆
body
.
put
(
"brandId"
,
dataApi
.
getLoginInfo
().
getBrandId
());
body
.
put
(
"brandId"
,
dataApi
.
getLoginInfo
().
getBrandId
());
body
.
put
(
"applyEndTime"
,
applyEndTime1
);
//报名结束时间
body
.
put
(
"applyEndTime"
,
applyEndTime1
);
//报名结束时间
body
.
put
(
"applyStartTime"
,
futureTimestampS
);
//报名开始时间,晚于当前时间
20秒
body
.
put
(
"applyStartTime"
,
futureTimestampS
);
//报名开始时间,晚于当前时间
10分钟
body
.
put
(
"courseId"
,
courseId
);
//关联课程ID
body
.
put
(
"courseId"
,
courseId
);
//关联课程ID
body
.
put
(
"creatorId"
,
dataApi
.
getLoginInfo
().
getAdminId
());
// 创建人即操作者
body
.
put
(
"creatorId"
,
dataApi
.
getLoginInfo
().
getAdminId
());
// 创建人即操作者
body
.
put
(
"openEndDate"
,
openEndDate0
);
//开营结束时间
body
.
put
(
"openEndDate"
,
openEndDate0
);
//开营结束时间
...
...
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