Skip to content

Commit f23d62f

Browse files
zacmostmoskovitch
andauthored
data is not required in getRules response (#35)
* `data` is not required in `getRules` response * `data` is not required in `getRules` response * v2.0.2 Co-authored-by: tmoskovitch <[email protected]>
1 parent 9a8dca1 commit f23d62f

File tree

7 files changed

+50
-19
lines changed

7 files changed

+50
-19
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ Add this dependency to your project's POM:
6060
<dependency>
6161
<groupId>com.twitter</groupId>
6262
<artifactId>twitter-api-java-sdk</artifactId>
63-
<version>2.0.1</version>
63+
<version>2.0.2</version>
6464
</dependency>
6565
```
6666

@@ -75,7 +75,7 @@ mavenLocal() // Needed if the 'twitter-api-java-sdk' jar has been publishe
7575
}
7676
7777
dependencies {
78-
implementation "com.twitter:twitter-api-java-sdk:2.0.1"
78+
implementation "com.twitter:twitter-api-java-sdk:2.0.2"
7979
}
8080
```
8181

@@ -89,7 +89,7 @@ mvn clean package
8989

9090
Then manually install the following JARs:
9191

92-
* `target/twitter-api-java-sdk-2.0.1.jar`
92+
* `target/twitter-api-java-sdk-2.0.2.jar`
9393
* `target/lib/*.jar`
9494

9595
## Twitter Credentials

docs/RulesLookupResponse.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
| Name | Type | Description | Notes |
99
|------------ | ------------- | ------------- | -------------|
10-
|**data** | [**List&lt;Rule&gt;**](Rule.md) | | |
10+
|**data** | [**List&lt;Rule&gt;**](Rule.md) | | [optional] |
1111
|**meta** | [**RulesResponseMetadata**](RulesResponseMetadata.md) | | |
1212

1313

examples/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<dependency>
1717
<groupId>com.twitter</groupId>
1818
<artifactId>twitter-api-java-sdk</artifactId>
19-
<version>2.0.1</version>
19+
<version>2.0.2</version>
2020
<scope>compile</scope>
2121
</dependency>
2222
</dependencies>

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<artifactId>twitter-api-java-sdk</artifactId>
66
<packaging>jar</packaging>
77
<name>twitter-api-java-sdk</name>
8-
<version>2.0.1</version>
8+
<version>2.0.2</version>
99
<url>https://github.com/twitterdev/twitter-api-java-sdk</url>
1010
<description>Twitter API v2 available endpoints</description>
1111
<scm>

src/main/java/com/twitter/clientlib/ApiClient.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,7 @@ private void init() {
225225
json = new JSON();
226226

227227
// Set default User-Agent.
228-
setUserAgent("twitter-api-java-sdk/2.0.1");
228+
setUserAgent("twitter-api-java-sdk/2.0.2");
229229

230230
authentications = new HashMap<String, Authentication>();
231231
}

src/main/java/com/twitter/clientlib/model/RulesLookupResponse.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
public class RulesLookupResponse {
6565
public static final String SERIALIZED_NAME_DATA = "data";
6666
@SerializedName(SERIALIZED_NAME_DATA)
67-
private List<Rule> data = new ArrayList<>();
67+
private List<Rule> data = null;
6868

6969
public static final String SERIALIZED_NAME_META = "meta";
7070
@SerializedName(SERIALIZED_NAME_META)
@@ -80,6 +80,9 @@ public RulesLookupResponse data(List<Rule> data) {
8080
}
8181

8282
public RulesLookupResponse addDataItem(Rule dataItem) {
83+
if (this.data == null) {
84+
this.data = new ArrayList<>();
85+
}
8386
this.data.add(dataItem);
8487
return this;
8588
}
@@ -88,8 +91,8 @@ public RulesLookupResponse addDataItem(Rule dataItem) {
8891
* Get data
8992
* @return data
9093
**/
91-
@javax.annotation.Nonnull
92-
@ApiModelProperty(required = true, value = "")
94+
@javax.annotation.Nullable
95+
@ApiModelProperty(value = "")
9396

9497
public List<Rule> getData() {
9598
return data;
@@ -176,7 +179,6 @@ private String toIndentedString(Object o) {
176179

177180
// a set of required properties/fields (JSON key names)
178181
openapiRequiredFields = new HashSet<String>();
179-
openapiRequiredFields.add("data");
180182
openapiRequiredFields.add("meta");
181183
}
182184

src/test/java/com/twitter/clientlib/integration/ApiTweetBearerTester.java

Lines changed: 37 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -75,18 +75,47 @@ private AddOrDeleteRulesResponse deleteRule(String ruleStrValue) throws ApiExcep
7575
.execute();
7676
}
7777

78+
private void deleteAllRules() throws ApiException {
79+
RulesLookupResponse result = apiInstance.tweets().getRules().execute();
80+
if(result.getData() != null) {
81+
for(Rule rule : result.getData()) {
82+
AddOrDeleteRulesRequest request = new AddOrDeleteRulesRequest();
83+
DeleteRulesRequest dr = new DeleteRulesRequest();
84+
DeleteRulesRequestDelete drd = new DeleteRulesRequestDelete();
85+
drd.setValues(Arrays.asList(rule.getValue()));
86+
dr.setDelete(drd);
87+
request.setActualInstance(dr);
88+
apiInstance.tweets().addOrDeleteRules(request).dryRun(false).execute();
89+
}
90+
}
91+
}
7892

79-
/* @Test
93+
@Test
8094
public void getRulesAllTest() throws ApiException {
81-
GetRulesResponse result = apiInstance.tweets().getRules(null, null, null);
82-
assertNotNull(result.getData());
83-
assertNotNull(result.getData().get(0));
84-
assertNotNull(result.getData().get(0).getValue());
85-
assertNotNull(result.getData().get(0).getId());
95+
try {
96+
addRule(ruleValue);
97+
RulesLookupResponse result = apiInstance.tweets().getRules().execute();
98+
assertNotNull(result.getData());
99+
assertNotNull(result.getData().get(0));
100+
assertNotNull(result.getData().get(0).getValue());
101+
assertNotNull(result.getData().get(0).getId());
102+
assertNotNull(result.getMeta());
103+
assertNotNull(result.getMeta().getSent());
104+
assertTrue(result.getMeta().getResultCount() > 0);
105+
} finally {
106+
deleteRule(ruleValue);
107+
}
108+
}
109+
110+
@Test
111+
public void getRulesNoRulesTest() throws ApiException {
112+
deleteAllRules();
113+
RulesLookupResponse result = apiInstance.tweets().getRules().execute();
114+
assertNull(result.getData());
86115
assertNotNull(result.getMeta());
87116
assertNotNull(result.getMeta().getSent());
88-
assertTrue(result.getMeta().getResultCount() > 0);
89-
} */
117+
assertEquals(0, result.getMeta().getResultCount());
118+
}
90119

91120
@Test
92121
public void addOrDeleteRulesAddTest() throws ApiException {

0 commit comments

Comments
 (0)