JAVA-8638: addressing PR review comments.

This commit is contained in:
chaos2418 2021-11-23 09:38:47 +05:30
parent 686857c251
commit fdeab133a5
5 changed files with 36 additions and 57 deletions

View File

@ -123,39 +123,24 @@ public class EnversFooBarAuditIntegrationTest {
assertNotNull(barRevisionList); assertNotNull(barRevisionList);
assertEquals(4, barRevisionList.size()); assertEquals(4, barRevisionList.size());
assertEquals("BAR", barRevisionList.get(0) assertEquals("BAR", barRevisionList.get(0).getName());
.getName()); assertEquals("BAR", barRevisionList.get(1).getName());
assertEquals("BAR", barRevisionList.get(1) assertEquals("BAR1", barRevisionList.get(2).getName());
.getName()); assertEquals("BAR1", barRevisionList.get(3).getName());
assertEquals("BAR1", barRevisionList.get(2)
.getName());
assertEquals("BAR1", barRevisionList.get(3)
.getName());
assertEquals(1, barRevisionList.get(0) assertEquals(1, barRevisionList.get(0).getFooSet().size());
.getFooSet() assertEquals(2, barRevisionList.get(1).getFooSet().size());
.size()); assertEquals(2, barRevisionList.get(2).getFooSet().size());
assertEquals(2, barRevisionList.get(1) assertEquals(3, barRevisionList.get(3).getFooSet().size());
.getFooSet()
.size());
assertEquals(2, barRevisionList.get(2)
.getFooSet()
.size());
assertEquals(3, barRevisionList.get(3)
.getFooSet()
.size());
// test Foo revisions // test Foo revisions
fooRevisionList = fooService.getRevisions(); fooRevisionList = fooService.getRevisions();
assertNotNull(fooRevisionList); assertNotNull(fooRevisionList);
assertEquals(3, fooRevisionList.size()); assertEquals(3, fooRevisionList.size());
assertEquals("FOO1", fooRevisionList.get(0) assertEquals("FOO1", fooRevisionList.get(0).getName());
.getName()); assertEquals("FOO2", fooRevisionList.get(1).getName());
assertEquals("FOO2", fooRevisionList.get(1) assertEquals("FOO3", fooRevisionList.get(2).getName());
.getName());
assertEquals("FOO3", fooRevisionList.get(2)
.getName());
} }
} }

View File

@ -46,10 +46,8 @@ public class FooFixtures {
} }
foo2.setBar(bar); foo2.setBar(bar);
session.save(foo2); session.save(foo2);
bar.getFooSet() bar.getFooSet().add(foo);
.add(foo); bar.getFooSet().add(foo2);
bar.getFooSet()
.add(foo2);
session.merge(bar); session.merge(bar);
} }
tx.commit(); tx.commit();
@ -80,8 +78,7 @@ public class FooFixtures {
final Foo foo = new Foo(); final Foo foo = new Foo();
foo.setName("Foo_" + (i + 120)); foo.setName("Foo_" + (i + 120));
final Bar bar = new Bar("bar_" + i); final Bar bar = new Bar("bar_" + i);
bar.getFooSet() bar.getFooSet().add(foo);
.add(foo);
foo.setBar(bar); foo.setBar(bar);
fooList.add(foo); fooList.add(foo);

View File

@ -50,8 +50,7 @@ public class FooSortingPersistenceIntegrationTest {
@After @After
public void after() { public void after() {
session.getTransaction() session.getTransaction().commit();
.commit();
session.close(); session.close();
} }
@ -71,8 +70,7 @@ public class FooSortingPersistenceIntegrationTest {
final Query query = session.createQuery(hql); final Query query = session.createQuery(hql);
final List<Foo> fooList = query.list(); final List<Foo> fooList = query.list();
assertNull(fooList.get(fooList.toArray().length - 1) assertNull(fooList.get(fooList.toArray().length - 1).getName());
.getName());
for (final Foo foo : fooList) { for (final Foo foo : fooList) {
LOGGER.debug("Name: {}, Id: {}", foo.getName(), foo.getId()); LOGGER.debug("Name: {}, Id: {}", foo.getName(), foo.getId());
} }
@ -83,8 +81,7 @@ public class FooSortingPersistenceIntegrationTest {
final String hql = "FROM Foo f ORDER BY f.name NULLS FIRST"; final String hql = "FROM Foo f ORDER BY f.name NULLS FIRST";
final Query query = session.createQuery(hql); final Query query = session.createQuery(hql);
final List<Foo> fooList = query.list(); final List<Foo> fooList = query.list();
assertNull(fooList.get(0) assertNull(fooList.get(0).getName());
.getName());
for (final Foo foo : fooList) { for (final Foo foo : fooList) {
LOGGER.debug("Name: {}", foo.getName()); LOGGER.debug("Name: {}", foo.getName());
@ -145,11 +142,9 @@ public class FooSortingPersistenceIntegrationTest {
@Test @Test
public final void whenCriteriaSortingStringNullsLastAsc_thenNullsLast() { public final void whenCriteriaSortingStringNullsLastAsc_thenNullsLast() {
final Criteria criteria = session.createCriteria(Foo.class, "FOO"); final Criteria criteria = session.createCriteria(Foo.class, "FOO");
criteria.addOrder(Order.asc("name") criteria.addOrder(Order.asc("name").nulls(NullPrecedence.LAST));
.nulls(NullPrecedence.LAST));
final List<Foo> fooList = criteria.list(); final List<Foo> fooList = criteria.list();
assertNull(fooList.get(fooList.toArray().length - 1) assertNull(fooList.get(fooList.toArray().length - 1).getName());
.getName());
for (final Foo foo : fooList) { for (final Foo foo : fooList) {
LOGGER.debug("Id: {}, FirstName: {}", foo.getId(), foo.getName()); LOGGER.debug("Id: {}, FirstName: {}", foo.getId(), foo.getName());
} }
@ -158,11 +153,9 @@ public class FooSortingPersistenceIntegrationTest {
@Test @Test
public final void whenCriteriaSortingStringNullsFirstDesc_thenNullsFirst() { public final void whenCriteriaSortingStringNullsFirstDesc_thenNullsFirst() {
final Criteria criteria = session.createCriteria(Foo.class, "FOO"); final Criteria criteria = session.createCriteria(Foo.class, "FOO");
criteria.addOrder(Order.desc("name") criteria.addOrder(Order.desc("name").nulls(NullPrecedence.FIRST));
.nulls(NullPrecedence.FIRST));
final List<Foo> fooList = criteria.list(); final List<Foo> fooList = criteria.list();
assertNull(fooList.get(0) assertNull(fooList.get(0).getName());
.getName());
for (final Foo foo : fooList) { for (final Foo foo : fooList) {
LOGGER.debug("Id: {}, FirstName: {}", foo.getId(), foo.getName()); LOGGER.debug("Id: {}, FirstName: {}", foo.getId(), foo.getName());
} }

View File

@ -40,42 +40,46 @@ public class UserRepositoryIntegrationTest {
@Test @Test
public void whenFindAllSortedByNameThenAllSorted() { public void whenFindAllSortedByNameThenAllSorted() {
List<User> allUsersSortedByName = userRepository.findAll(Sort.by(Sort.Direction.ASC, "name")); List<User> allUsersSortedByName = userRepository.findAll(Sort.by(Sort.Direction.ASC, "name"));
assertThat(allUsersSortedByName).extracting("name") assertThat(allUsersSortedByName)
.extracting("name")
.containsSequence("Bob", "Cindy", "John"); .containsSequence("Bob", "Cindy", "John");
} }
@Test @Test
public void whenFindAllSortedByNameLengthThenException() { public void whenFindAllSortedByNameLengthThenException() {
assertThatThrownBy(() -> userRepository.findAll(Sort.by("LENGTH(name)"))).isInstanceOf(PropertyReferenceException.class); assertThatThrownBy(() -> userRepository.findAll(Sort.by("LENGTH(name)")))
.isInstanceOf(PropertyReferenceException.class);
} }
@Test @Test
public void whenFindAllUsersSortedByNameThenAllSorted() { public void whenFindAllUsersSortedByNameThenAllSorted() {
List<User> allUsersSortedByName = userRepository.findAllUsers(Sort.by(Sort.Direction.ASC, "name")); List<User> allUsersSortedByName = userRepository.findAllUsers(Sort.by(Sort.Direction.ASC, "name"));
assertThat(allUsersSortedByName).extracting("name") assertThat(allUsersSortedByName)
.extracting("name")
.containsSequence("Bob", "Cindy", "John"); .containsSequence("Bob", "Cindy", "John");
} }
@Test @Test
public void whenFindAllUsersSortedByNameLengthThenAllSorted() { public void whenFindAllUsersSortedByNameLengthThenAllSorted() {
List<User> allUsersSortedByName = userRepository.findAllUsers(JpaSort.unsafe("LENGTH(name)")); List<User> allUsersSortedByName = userRepository.findAllUsers(JpaSort.unsafe("LENGTH(name)"));
assertThat(allUsersSortedByName).extracting("name") assertThat(allUsersSortedByName)
.extracting("name")
.containsSequence("Bob", "John", "Cindy"); .containsSequence("Bob", "John", "Cindy");
} }
@Test @Test
public void whenFindAllUsersWithPaginationThenPaginated() { public void whenFindAllUsersWithPaginationThenPaginated() {
Page<User> page = userRepository.findAllUsersWithPagination(PageRequest.of(0, 1)); Page<User> page = userRepository.findAllUsersWithPagination(PageRequest.of(0, 1));
assertThat(page.stream() assertThat(page.stream().map(User::getId))
.map(User::getId)).hasSize(1) .hasSize(1)
.containsOnly(1); .containsOnly(1);
} }
@Test @Test
public void whenFindAllUsersWithPaginationNativeThenPaginated() { public void whenFindAllUsersWithPaginationNativeThenPaginated() {
Page<User> page = userRepository.findAllUsersWithPaginationNative(PageRequest.of(1, 1)); Page<User> page = userRepository.findAllUsersWithPaginationNative(PageRequest.of(1, 1));
assertThat(page.stream() assertThat(page.stream().map(User::getId))
.map(User::getId)).hasSize(1) .hasSize(1)
.containsOnly(2); .containsOnly(2);
} }
@ -122,7 +126,8 @@ public class UserRepositoryIntegrationTest {
@Test @Test
public void whenFindUserByNameListThenAllFound() { public void whenFindUserByNameListThenAllFound() {
List<User> users = userRepository.findUserByNameList(Arrays.asList("Bob", "Cindy")); List<User> users = userRepository.findUserByNameList(Arrays.asList("Bob", "Cindy"));
assertThat(users).extracting("name") assertThat(users)
.extracting("name")
.containsOnly("Bob", "Cindy"); .containsOnly("Bob", "Cindy");
} }

View File

@ -21,8 +21,7 @@ public class HibernateUtil {
configuration.addAnnotatedClass(Event.class); configuration.addAnnotatedClass(Event.class);
configuration.addAnnotatedClass(EventGeneratedId.class); configuration.addAnnotatedClass(EventGeneratedId.class);
configuration.configure("immutable.cfg.xml"); configuration.configure("immutable.cfg.xml");
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()) ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();
.build();
return configuration.buildSessionFactory(serviceRegistry); return configuration.buildSessionFactory(serviceRegistry);
} catch (Throwable ex) { } catch (Throwable ex) {
LOGGER.debug("Initial SessionFactory creation failed.", ex); LOGGER.debug("Initial SessionFactory creation failed.", ex);