Skip to content

Commit 18fd2b5

Browse files
authored
Merge pull request #548 from arturCwiklinsky/master
Version 3.38.0
2 parents 56b6942 + 40669eb commit 18fd2b5

File tree

9 files changed

+67
-21
lines changed

9 files changed

+67
-21
lines changed

pom.xml

+11-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<modelVersion>4.0.0</modelVersion>
33
<groupId>com.testdroid</groupId>
44
<artifactId>testdroid-api</artifactId>
5-
<version>3.37.0</version>
5+
<version>3.38.0</version>
66
<packaging>jar</packaging>
77
<name>Bitbar API v2</name>
88
<url>https://github.com/bitbar/testdroid-api</url>
@@ -18,13 +18,15 @@
1818
<jacoco-maven-plugin.skip>true</jacoco-maven-plugin.skip>
1919
<!-- disable default deployment -->
2020
<maven.deploy.skip>true</maven.deploy.skip>
21-
<org.springframework.boot.spring-boot-dependencies>3.3.5</org.springframework.boot.spring-boot-dependencies>
21+
<org.springframework.boot.spring-boot-dependencies>3.4.1</org.springframework.boot.spring-boot-dependencies>
2222
<org.apache.commons.collections4.version>4.4</org.apache.commons.collections4.version>
2323
<org.apache.commons.io.version>2.18.0</org.apache.commons.io.version>
2424
<commons-text.version>1.10.0</commons-text.version>
25-
<dependency-check-maven.version>11.1.0</dependency-check-maven.version>
25+
<dependency-check-maven.version>11.1.1</dependency-check-maven.version>
2626
<jacoco-maven-plugin.version>0.8.12</jacoco-maven-plugin.version>
2727
<org.reflections.version>0.10.2</org.reflections.version>
28+
<okhttp.version>4.12.0</okhttp.version>
29+
<commons-rng-simple.version>1.6</commons-rng-simple.version>
2830
</properties>
2931
<scm>
3032
<connection>scm:git:git://github.com:bitbar/testdroid-api.git</connection>
@@ -211,6 +213,7 @@
211213
<dependency>
212214
<groupId>com.squareup.okhttp3</groupId>
213215
<artifactId>okhttp</artifactId>
216+
<version>${okhttp.version}</version>
214217
</dependency>
215218
<dependency>
216219
<groupId>org.apache.commons</groupId>
@@ -231,6 +234,11 @@
231234
<artifactId>commons-text</artifactId>
232235
<version>${commons-text.version}</version>
233236
</dependency>
237+
<dependency>
238+
<groupId>org.apache.commons</groupId>
239+
<artifactId>commons-rng-simple</artifactId>
240+
<version>${commons-rng-simple.version}</version>
241+
</dependency>
234242
<dependency>
235243
<groupId>com.fasterxml.jackson.core</groupId>
236244
<artifactId>jackson-annotations</artifactId>

src/main/java/com/testdroid/api/dto/MappingKey.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@ private MappingKey() {
159159
public static final String FRAMEWORK_ID = "frameworkId";
160160
public static final String FRAMEWORK_NAME = "frameworkName";
161161
public static final String FRAMEWORK_QUEUE_WAIT = "frameworkQueueWait";
162+
public static final String FREE_TRIAL = "freeTrial";
162163
public static final String FROM_TIME = "fromTime";
163164
public static final String GLOBAL = "global";
164165
public static final String GLOBAL_DEVICE_LIMIT = "globalDeviceLimit";
@@ -347,7 +348,6 @@ private MappingKey() {
347348
public static final String TIMESTAMP = "timestamp";
348349
public static final String TO_TIME = "toTime";
349350
public static final String TOTAL = "total";
350-
public static final String TOTAL_DEVICE_COUNT = "totalDeviceCount";
351351
public static final String TOTAL_DEVICE_SESSIONS = "totalDeviceSessions";
352352
public static final String TOTAL_PRICE = "totalPrice";
353353
public static final String TOTAL_TESTS = "totalTests";

src/main/java/com/testdroid/api/model/APIAdminDeviceModel.java

+13-1
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,16 @@ public class APIAdminDeviceModel extends APIEntity {
3434

3535
private String releaseVersion;
3636

37+
private Boolean freeTrial;
38+
3739
public APIAdminDeviceModel() {
3840
}
3941

4042
@SuppressWarnings("squid:S107")
4143
public APIAdminDeviceModel(
4244
Long id, String name, APIDevice.OsType osType, APIDevice.Platform platform, String location,
4345
Boolean dedicated, String releaseVersion, Boolean enabled, Integer creditsPrice, Integer online,
44-
Integer total, Long running, Long queueSize, Double avgWaitingTime) {
46+
Integer total, Long running, Long queueSize, Double avgWaitingTime, Boolean freeTrial) {
4547
super(id);
4648
this.name = name;
4749
this.osType = osType;
@@ -56,6 +58,7 @@ public APIAdminDeviceModel(
5658
this.running = running;
5759
this.queueSize = queueSize;
5860
this.avgWaitingTime = avgWaitingTime != null ? avgWaitingTime.longValue() : 0;
61+
this.freeTrial = freeTrial;
5962
}
6063

6164
public String getName() {
@@ -162,6 +165,14 @@ public void setCreditsPrice(Integer creditsPrice) {
162165
this.creditsPrice = creditsPrice;
163166
}
164167

168+
public Boolean getFreeTrial() {
169+
return freeTrial;
170+
}
171+
172+
public void setFreeTrial(Boolean freeTrial) {
173+
this.freeTrial = freeTrial;
174+
}
175+
165176
@Override
166177
@JsonIgnore
167178
protected <T extends APIEntity> void clone(T from) {
@@ -180,5 +191,6 @@ protected <T extends APIEntity> void clone(T from) {
180191
this.running = model.running;
181192
this.queueSize = model.queueSize;
182193
this.avgWaitingTime = model.avgWaitingTime;
194+
this.freeTrial = model.freeTrial;
183195
}
184196
}

src/main/java/com/testdroid/api/model/APIDevice.java

+17
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,12 @@ public List<OsType> getFamily() {
104104
public static final List<APIDevice.OsType> DESKTOPS = Collections.singletonList(APIDevice.OsType.DESKTOP);
105105
}
106106

107+
public enum LockReason {
108+
TESTING,
109+
CLEANING,
110+
NOT_OPERATIONAL
111+
}
112+
107113
private Integer creditsPrice;
108114

109115
private String displayName;
@@ -170,6 +176,8 @@ public List<OsType> getFamily() {
170176
@Deprecated
171177
private String mainUserEmail;
172178

179+
private LockReason lockReason;
180+
173181
public APIDevice() {
174182
}
175183

@@ -446,6 +454,14 @@ public void setMainUserEmail(String mainUserEmail) {
446454
this.mainUserEmail = mainUserEmail;
447455
}
448456

457+
public LockReason getLockReason() {
458+
return lockReason;
459+
}
460+
461+
public void setLockReason(LockReason lockReason) {
462+
this.lockReason = lockReason;
463+
}
464+
449465
@Override
450466
@JsonIgnore
451467
protected <T extends APIEntity> void clone(T from) {
@@ -482,5 +498,6 @@ protected <T extends APIEntity> void clone(T from) {
482498
this.onlineDevices = apiDevice.onlineDevices;
483499
this.availableDevices = apiDevice.availableDevices;
484500
this.location = apiDevice.location;
501+
this.lockReason = apiDevice.lockReason;
485502
}
486503
}

src/main/java/com/testdroid/api/model/APITestRunConfig.java

-11
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,6 @@ public enum Scheduler {
9797

9898
private String projectName;
9999

100-
private boolean resignFiles;
101-
102100
private boolean runAvailable;
103101

104102
private Scheduler scheduler = Scheduler.PARALLEL;
@@ -447,14 +445,6 @@ public void setStatusCode(int statusCode) {
447445
this.statusCode = statusCode;
448446
}
449447

450-
public boolean isResignFiles() {
451-
return resignFiles;
452-
}
453-
454-
public void setResignFiles(boolean resignFiles) {
455-
this.resignFiles = resignFiles;
456-
}
457-
458448
public boolean isLoadedPrevious() {
459449
return loadedPrevious;
460450
}
@@ -538,7 +528,6 @@ protected <T extends APIEntity> void clone(T from) {
538528
this.osType = apiTestRunConfig.osType;
539529
this.projectId = apiTestRunConfig.projectId;
540530
this.projectName = apiTestRunConfig.projectName;
541-
this.resignFiles = apiTestRunConfig.resignFiles;
542531
this.runAvailable = apiTestRunConfig.runAvailable;
543532
this.scheduler = apiTestRunConfig.scheduler;
544533
this.screenshotDir = apiTestRunConfig.screenshotDir;

src/main/java/com/testdroid/api/model/APIUserFileProperty.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ public enum Key {
2121
BUNDLE_NAME("bundle_name"),
2222
BUNDLE_IDENTIFIER("bundle_identifier"),
2323
JAR_NAMES("jar_names"),
24-
CODE_SIGNERS("code_signers"),
24+
CODE_SIGNERS("code_signers"), // TODO: Remove in 3.39
2525
VIRUS_SCAN_STATUS("virus_scan_status");
2626

2727
private final String value;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package com.testdroid.api.util;
2+
3+
import org.apache.commons.lang3.RandomStringUtils;
4+
import org.apache.commons.rng.UniformRandomProvider;
5+
import org.apache.commons.rng.simple.RandomSource;
6+
7+
/**
8+
* @author Michał Szpruta <michal.szpruta@smartbear.com>
9+
*/
10+
public class RandomUtils {
11+
12+
private RandomUtils() {
13+
throw new IllegalStateException("Utility class");
14+
}
15+
16+
public static final UniformRandomProvider RNG = RandomSource.XO_RO_SHI_RO_128_PP.create();
17+
18+
public static final RandomStringUtils RSU = RandomStringUtils.secure();
19+
20+
}

src/test/java/com/testdroid/api/APIListTest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import com.testdroid.api.dto.Context;
44
import com.testdroid.api.filter.FilterEntry;
55
import com.testdroid.api.model.APIUser;
6-
import org.apache.commons.lang3.RandomStringUtils;
76
import org.junit.jupiter.api.Tag;
87
import org.junit.jupiter.params.ParameterizedTest;
98
import org.junit.jupiter.params.provider.MethodSource;
@@ -15,6 +14,7 @@
1514
import static com.testdroid.api.dto.MappingKey.NAME;
1615
import static com.testdroid.api.dto.Operand.EQ;
1716
import static com.testdroid.api.dto.Operand.IN;
17+
import static com.testdroid.api.util.RandomUtils.RSU;
1818
import static com.testdroid.cloud.test.categories.TestTags.UNIT;
1919
import static org.apache.commons.lang3.StringUtils.EMPTY;
2020
import static org.assertj.core.api.Assertions.assertThat;
@@ -29,7 +29,7 @@ class APIListTest {
2929

3030
private static final String FORMAT = "%s?offset=%s&limit=%s&search=%s&sort=%s&filter=%s";
3131

32-
private static final String SEARCH = RandomStringUtils.randomAlphanumeric(30);
32+
private static final String SEARCH = RSU.nextAlphanumeric(30);
3333

3434
private static final APISort SORT_EMPTY = APISort.deserialize(EMPTY);
3535

src/test/java/com/testdroid/api/BaseAPIClientTest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import com.testdroid.api.filter.FilterEntry;
55
import com.testdroid.api.model.APIFramework;
66
import com.testdroid.api.model.APIUser;
7-
import org.apache.commons.lang3.RandomStringUtils;
87
import org.junit.jupiter.api.AfterAll;
98
import org.junit.jupiter.api.BeforeAll;
109
import org.junit.jupiter.api.Tag;
@@ -23,6 +22,7 @@
2322
import static com.testdroid.api.dto.Operand.LIKE;
2423
import static com.testdroid.api.filter.FilterEntry.trueFilterEntry;
2524
import static com.testdroid.api.model.APIDevice.OsType.ANDROID;
25+
import static com.testdroid.api.util.RandomUtils.RSU;
2626
import static com.testdroid.cloud.test.categories.TestTags.API_CLIENT;
2727
import static java.lang.Integer.MAX_VALUE;
2828
import static org.apache.commons.lang3.StringUtils.EMPTY;
@@ -56,7 +56,7 @@ abstract class BaseAPIClientTest {
5656

5757
static final String TEST_PATH = "/fixtures/BitbarSampleAppTest.apk";
5858

59-
private static final String USER_PASSWORD = RandomStringUtils.randomAlphanumeric(20);
59+
private static final String USER_PASSWORD = RSU.nextAlphanumeric(20);
6060

6161
@BeforeAll
6262
static void beforeAll() throws APIException {

0 commit comments

Comments
 (0)