#215 - Adding tests.

Original pull request: #231.
This commit is contained in:
Jens Schauder
2020-04-14 17:05:55 +02:00
parent 9607411b86
commit b2d4c91865
3 changed files with 61 additions and 2 deletions

View File

@@ -182,7 +182,7 @@ public class EnversRevisionRepositoryImpl<T, ID, N extends Number & Comparable<N
}
@SuppressWarnings("unchecked")
private static class QueryResult<T> {
static class QueryResult<T> {
private final T entity;
private final Object metadata;

View File

@@ -0,0 +1,60 @@
/*
* Copyright 2020 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.data.envers.repository.support;
import static org.assertj.core.api.Assertions.*;
import static org.mockito.Mockito.*;
import org.hibernate.envers.DefaultRevisionEntity;
import org.hibernate.envers.RevisionType;
import org.junit.Test;
import org.springframework.data.history.AnnotationRevisionMetadata;
import org.springframework.data.history.RevisionMetadata;
/**
* Unit tests for {@link EnversRevisionRepositoryImpl}.
*
* @author Jens Schauder
*/
public class EnversRevisionRepositoryImplUnitTests {
@Test // gh-215
public void revisionTypeOfAnnotationRevisionMetadataIsProperlySet() {
Object[] data = new Object[] { "a", "some metadata", RevisionType.DEL };
EnversRevisionRepositoryImpl.QueryResult<Object> result = new EnversRevisionRepositoryImpl.QueryResult<>(data);
RevisionMetadata<?> revisionMetadata = result.createRevisionMetadata();
assertThat(revisionMetadata).isInstanceOf(AnnotationRevisionMetadata.class);
assertThat(revisionMetadata.getRevisionType()).isEqualTo(RevisionMetadata.RevisionType.DELETE);
}
@Test // gh-215
public void revisionTypeOfDefaultRevisionMetadataIsProperlySet() {
Object[] data = new Object[] { "a", mock(DefaultRevisionEntity.class), RevisionType.DEL };
EnversRevisionRepositoryImpl.QueryResult<Object> result = new EnversRevisionRepositoryImpl.QueryResult<>(data);
RevisionMetadata<?> revisionMetadata = result.createRevisionMetadata();
assertThat(revisionMetadata).isInstanceOf(DefaultRevisionMetadata.class);
assertThat(revisionMetadata.getRevisionType()).isEqualTo(RevisionMetadata.RevisionType.DELETE);
}
}

View File

@@ -36,7 +36,6 @@ import org.springframework.data.envers.sample.CountryRepository;
import org.springframework.data.envers.sample.License;
import org.springframework.data.envers.sample.LicenseRepository;
import org.springframework.data.history.Revision;
import org.springframework.data.history.RevisionMetadata;
import org.springframework.data.history.RevisionSort;
import org.springframework.data.history.Revisions;
import org.springframework.test.context.ContextConfiguration;