.hideRules(RubyUtils.toBoolean(params.get(IssueFilterParameters.HIDE_RULES)))
.createdAt(RubyUtils.toDate(params.get(IssueFilterParameters.CREATED_AT)))
.createdAfter(buildCreatedAfterFromDates(RubyUtils.toDate(params.get(CREATED_AFTER)), (String) params.get(CREATED_IN_LAST)))
- .createdBefore(RubyUtils.toDate(params.get(IssueFilterParameters.CREATED_BEFORE)));
+ .createdBefore(RubyUtils.toDate(buildCreatedBefore((String) params.get(IssueFilterParameters.CREATED_BEFORE))));
Set<String> allComponentUuids = Sets.newHashSet();
boolean effectiveOnComponentOnly = mergeDeprecatedComponentParameters(session,
}
}
+ @CheckForNull
private Date buildCreatedAfterFromDates(@Nullable Date createdAfter, @Nullable String createdInLast) {
checkArgument(createdAfter == null || createdInLast == null, format("%s and %s cannot be set simultaneously", CREATED_AFTER, CREATED_IN_LAST));
.types(request.getTypes())
.assigned(request.getAssigned())
.createdAt(parseAsDateTime(request.getCreatedAt()))
- .createdBefore(parseAsDateTime(request.getCreatedBefore()))
+ .createdBefore(buildCreatedBefore(request.getCreatedBefore()))
.facetMode(request.getFacetMode());
Set<String> allComponentUuids = Sets.newHashSet();
return buildCreatedAfterFromDates(createdAfterFromSnapshot, createdInLast);
}
+ @CheckForNull
+ private static Date buildCreatedBefore(String stringDate) {
+ Date date = DateUtils.parseDateTimeQuietly(stringDate);
+ if (date != null) {
+ return date;
+ }
+
+ date = DateUtils.parseDateQuietly(stringDate);
+
+ return date == null ? null : DateUtils.addDays(date, 1);
+ }
+
@CheckForNull
private Date findCreatedAfterFromComponentUuid(DbSession dbSession, String uuid) {
ComponentDto component = checkFoundWithOptional(componentService.getByUuid(uuid), "Component with id '%s' not found", uuid);
assertThat(query.asc()).isTrue();
}
+ @Test
+ public void dates_are_inclusive() {
+ SearchWsRequest request = new SearchWsRequest()
+ .setCreatedAfter("2013-04-16")
+ .setCreatedBefore("2013-04-17");
+
+ IssueQuery query = underTest.createFromRequest(request);
+
+ assertThat(query.createdAfter()).isEqualTo(DateUtils.parseDate("2013-04-16"));
+ assertThat(query.createdBefore()).isEqualTo(DateUtils.parseDate("2013-04-18"));
+ }
+
@Test
public void add_unknown_when_no_component_found() {
Map<String, Object> map = newHashMap();