@Test public void byteBufferToByteBuffer() throws Exception { byte[] bytes = new byte[] { 1, 2, 3 }; ByteBuffer byteBuffer = ByteBuffer.wrap(bytes); ByteBuffer convert = this.conversionService.convert(byteBuffer, ByteBuffer.class); assertThat(convert, not(sameInstance(byteBuffer.rewind()))); assertThat(convert, equalTo(byteBuffer.rewind())); assertThat(convert, equalTo(ByteBuffer.wrap(bytes))); assertThat(convert.array(), equalTo(bytes)); }
@Test public void shouldFailIfIsNotAcceptingStatements() throws Exception { // Given: final String queryString = "SELECT * FROM test_stream;"; reset(mockKsqlEngine); expect(mockKsqlEngine.isAcceptingStatements()).andReturn(false); replay(mockKsqlEngine); // When: final Response response = testResource.streamQuery(new KsqlRequest(queryString, Collections.emptyMap(), null)); // Then: assertThat(response.getStatus(), equalTo(Status.INTERNAL_SERVER_ERROR.getStatusCode())); final KsqlErrorMessage errorMessage = (KsqlErrorMessage)response.getEntity(); assertThat(errorMessage.getErrorCode(), equalTo(Errors.ERROR_CODE_SERVER_ERROR)); assertThat(errorMessage.getMessage(), containsString("Cluster has been terminated.")); }
@Test public void multipleNullValues() { Object k1 = generateKey(new Object[] { "a", null, "b", null }); Object k2 = generateKey(new Object[] { "a", null, "b", null }); Object k3 = generateKey(new Object[] { "a", null, "b" }); assertThat(k1.hashCode(), equalTo(k2.hashCode())); assertThat(k1.hashCode(), not(equalTo(k3.hashCode()))); assertThat(k1, equalTo(k2)); assertThat(k1, not(equalTo(k3))); }
@Test public void testGetNonExistingProcessInstance() { ProcessInstanceQuery sampleInstanceQuery = mock(ProcessInstanceQuery.class); when(runtimeServiceMock.createProcessInstanceQuery()).thenReturn(sampleInstanceQuery); when(sampleInstanceQuery.processInstanceId(anyString())).thenReturn(sampleInstanceQuery); when(sampleInstanceQuery.singleResult()).thenReturn(null); given().pathParam("id", "aNonExistingInstanceId") .then().expect().statusCode(Status.NOT_FOUND.getStatusCode()).contentType(ContentType.JSON) .body("type", equalTo(InvalidRequestException.class.getSimpleName())) .body("message", equalTo("Process instance with id aNonExistingInstanceId does not exist")) .when().get(SINGLE_PROCESS_INSTANCE_URL); }
@Test public void arrayWithExtraParameter() { Object k1 = generateKey(new Object[] { new String[]{"a", "b"}, "c" }); Object k2 = generateKey(new Object[] { new String[]{"a", "b"}, "c" }); Object k3 = generateKey(new Object[] { new String[]{"b", "a"}, "c" }); assertThat(k1.hashCode(), equalTo(k2.hashCode())); assertThat(k1.hashCode(), not(equalTo(k3.hashCode()))); assertThat(k1, equalTo(k2)); assertThat(k1, not(equalTo(k3))); }
@Test public void testMessagesTimersParameter() { Map<String, Object> parameters = new HashMap<String, Object>(); parameters.put("messages", MockProvider.EXAMPLE_MESSAGES); parameters.put("timers", MockProvider.EXAMPLE_TIMERS); given().queryParams(parameters) .then().expect().statusCode(Status.BAD_REQUEST.getStatusCode()) .contentType(ContentType.JSON) .body("type",equalTo(InvalidRequestException.class.getSimpleName())) .body("message", equalTo("Parameter timers cannot be used together with parameter messages.")) .when().get(JOBS_RESOURCE_URL); }
@Test // SPR-10105 @SuppressWarnings("deprecation") public void stringToDateWithoutGlobalFormat() { String string = "Sat, 12 Aug 1995 13:30:00 GM"; Date date = this.conversionService.convert(string, Date.class); assertThat(date, equalTo(new Date(string))); }
@Test public void testCountyQuery() { expect() .statusCode(Status.OK.getStatusCode()) .body("count", equalTo(2)) .when() .get(FILTER_COUNT_QUERY_URL); verify(mockedQuery).count(); verifyNoMoreInteractions(mockedQuery); }
@Test public void getProperty_withStringArrayConversion() { testProperties.put("foo", "bar,baz"); assertThat(propertyResolver.getProperty("foo", String[].class), equalTo(new String[] { "bar", "baz" })); }
@Test public void testReadOnlyGroupDeleteFails() { when(identityServiceMock.isReadOnly()).thenReturn(true); given() .pathParam("id", MockProvider.EXAMPLE_GROUP_ID) .then().expect().statusCode(Status.FORBIDDEN.getStatusCode()).contentType(ContentType.JSON) .body("type", equalTo(InvalidRequestException.class.getSimpleName())) .body("message", equalTo("Identity service implementation is read-only.")) .when().delete(GROUP_URL); verify(identityServiceMock, never()).deleteGroup(MockProvider.EXAMPLE_GROUP_ID); }
@Test public void shouldSupportNullFieldType() throws Exception { String[] codes = resolver.resolveMessageCodes("errorCode", "objectName", "field", null); assertThat(codes, is(equalTo(new String[] { "errorCode.objectName.field", "errorCode.field", "errorCode" }))); }
@Test public void testGetStacktraceJobNotFound() { String exceptionMessage = "job not found"; doThrow(new ProcessEngineException(exceptionMessage)).when(mockManagementService).getJobExceptionStacktrace(MockProvider.EXAMPLE_JOB_ID); given().pathParam("id", MockProvider.EXAMPLE_JOB_ID) .then().expect().statusCode(Status.NOT_FOUND.getStatusCode()) .body("type", equalTo(InvalidRequestException.class.getSimpleName())) .body("message", equalTo(exceptionMessage)) .when().get(JOB_RESOURCE_GET_STACKTRACE_URL); }
@Test public void getResolvedGenerics() throws Exception { ResolvableType type = ResolvableType.forClass(List.class, ExtendsList.class); Class<?>[] generics = type.resolveGenerics(); assertThat(generics.length, equalTo(1)); assertThat(generics[0], equalTo((Class) CharSequence.class)); }
@Test public void testQueryCount() { expect() .statusCode(Status.OK.getStatusCode()) .body("count", equalTo(1)) .when() .get(HISTORY_INCIDENT_COUNT_QUERY_URL); verify(mockedQuery).count(); }
@Test public void serializable() throws Exception { TypeDescriptor typeDescriptor = TypeDescriptor.forObject(""); ByteArrayOutputStream out = new ByteArrayOutputStream(); ObjectOutputStream outputStream = new ObjectOutputStream(out); outputStream.writeObject(typeDescriptor); ObjectInputStream inputStream = new ObjectInputStream(new ByteArrayInputStream( out.toByteArray())); TypeDescriptor readObject = (TypeDescriptor) inputStream.readObject(); assertThat(readObject, equalTo(typeDescriptor)); }
@Test public void testQueryCount() { expect() .statusCode(Status.OK.getStatusCode()) .body("count", equalTo(1)) .when() .get(HISTORIC_TASK_INSTANCE_COUNT_RESOURCE_URL); verify(mockedQuery).count(); }
@Test public void getGenericOutOfBounds() throws Exception { ResolvableType type = ResolvableType.forClass(List.class, ExtendsList.class); assertThat(type.getGeneric(0), not(equalTo(ResolvableType.NONE))); assertThat(type.getGeneric(1), equalTo(ResolvableType.NONE)); assertThat(type.getGeneric(0, 1), equalTo(ResolvableType.NONE)); }
@Test public void testQueryCount() { expect().statusCode(Status.OK.getStatusCode()) .body("count", equalTo(1)) .when().get(USER_COUNT_QUERY_URL); verify(mockQuery).count(); }
@Test public void byteArrayToByteBuffer() throws Exception { byte[] bytes = new byte[] { 1, 2, 3 }; ByteBuffer convert = this.conversionService.convert(bytes, ByteBuffer.class); assertThat(convert.array(), not(sameInstance(bytes))); assertThat(convert.array(), equalTo(bytes)); }
@Test public void testMissingAuthorization() { String message = "not authorized"; when(historicBatchReport.list()).thenThrow(new AuthorizationException(message)); given() .then().expect() .statusCode(Status.FORBIDDEN.getStatusCode()) .contentType(ContentType.JSON) .body("type", equalTo(AuthorizationException.class.getSimpleName())) .body("message", equalTo(message)) .when().get(HISTORIC_REPORT_URL); }