Skip to content

Commit b9340a1

Browse files
authored
test: upgrade Spring Boot dependencies to 2.2.0.RELEASE (#188)
* test: upgrade Spring Boot dependencies to 2.2.0.M5 * try adding Spring repository in pom.xml * fix: assert extractor api changes * fix: update Spring Boot dependencies to 2.2.0.M6 * fix(versions): update spring-boot-dependencies to 2.2.0.RELEASE * refactor(tests): replace flatExtracting with asList * fix(versions): update spring-boot-dependencies to 2.2.2.RELEASE * fix(version): update to Spring Boot 2.3.0.RELEASE * fix: remove DataSourceInitializer
1 parent 1f48519 commit b9340a1

File tree

10 files changed

+78
-45
lines changed

10 files changed

+78
-45
lines changed

graphql-jpa-query-build/pom.xml

+21-1
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,33 @@
99
<artifactId>graphql-jpa-query-build</artifactId>
1010
<packaging>pom</packaging>
1111

12+
<repositories>
13+
<!-- Maven2 is just to speed up downloading repositories -->
14+
<repository>
15+
<id>maven2</id>
16+
<name>maven2</name>
17+
<url>https://repo.maven.apache.org/maven2</url>
18+
</repository>
19+
<repository>
20+
<id>spring-milestones</id>
21+
<name>Spring Milestones</name>
22+
<url>http://repo.spring.io/milestone</url>
23+
<releases>
24+
<enabled>true</enabled>
25+
</releases>
26+
<snapshots>
27+
<enabled>true</enabled>
28+
</snapshots>
29+
</repository>
30+
</repositories>
31+
1232
<dependencyManagement>
1333
<dependencies>
1434

1535
<dependency>
1636
<groupId>org.springframework.boot</groupId>
1737
<artifactId>spring-boot-dependencies</artifactId>
18-
<version>2.1.11.RELEASE</version>
38+
<version>2.3.0.RELEASE</version>
1939
<type>pom</type>
2040
<scope>import</scope>
2141
</dependency>

graphql-jpa-query-dependencies/pom.xml

+6
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
<evo-inflector.version>1.2.2</evo-inflector.version>
1616
<javax.interceptor-api.version>1.2.2</javax.interceptor-api.version>
1717
<javax.persistence-api.version>2.2</javax.persistence-api.version>
18+
<joda-time.version>2.10.5</joda-time.version>
1819
</properties>
1920

2021
<dependencyManagement>
@@ -69,6 +70,11 @@
6970
<artifactId>graphql-jpa-query-graphiql</artifactId>
7071
<version>${project.version}</version>
7172
</dependency>
73+
<dependency>
74+
<groupId>joda-time</groupId>
75+
<artifactId>joda-time</artifactId>
76+
<version>${joda-time.version}</version>
77+
</dependency>
7278
</dependencies>
7379
</dependencyManagement>
7480

graphql-jpa-query-example-merge/src/main/java/com/introproventures/graphql/jpa/query/example/books/BooksSchemaConfiguration.java

+13-14
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@
1111
import org.hibernate.dialect.H2Dialect;
1212
import org.springframework.beans.factory.annotation.Autowired;
1313
import org.springframework.beans.factory.annotation.Qualifier;
14+
import org.springframework.boot.ApplicationRunner;
1415
import org.springframework.boot.context.properties.ConfigurationProperties;
1516
import org.springframework.boot.jdbc.DataSourceBuilder;
1617
import org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder;
1718
import org.springframework.context.annotation.Bean;
1819
import org.springframework.context.annotation.Configuration;
1920
import org.springframework.core.io.DefaultResourceLoader;
2021
import org.springframework.core.io.ResourceLoader;
21-
import org.springframework.jdbc.datasource.init.DataSourceInitializer;
2222
import org.springframework.jdbc.datasource.init.ResourceDatabasePopulator;
2323
import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
2424
import org.springframework.orm.jpa.support.SharedEntityManagerBean;
@@ -43,7 +43,8 @@ public DataSource bookDataSource() {
4343
@Bean
4444
@Qualifier("bookEntityManagerFactory")
4545
public LocalContainerEntityManagerFactoryBean bookEntityManagerFactory(
46-
EntityManagerFactoryBuilder builder) {
46+
EntityManagerFactoryBuilder builder,
47+
@Qualifier("bookDataSource") DataSource bookDataSource) {
4748
Map<String, Object> properties = new HashMap<>();
4849
properties.put(AvailableSettings.HBM2DDL_AUTO, "create-drop");
4950
properties.put(AvailableSettings.HBM2DLL_CREATE_SCHEMAS, "true");
@@ -52,25 +53,23 @@ public LocalContainerEntityManagerFactoryBean bookEntityManagerFactory(
5253
properties.put(AvailableSettings.FORMAT_SQL, "true");
5354

5455
return builder
55-
.dataSource(bookDataSource())
56+
.dataSource(bookDataSource)
5657
.packages(Book.class)
5758
.persistenceUnit("books")
5859
.properties(properties)
5960
.build();
6061
}
6162

6263
@Bean
63-
public DataSourceInitializer booksDataSourceInitializer(@Qualifier("bookDataSource") DataSource bookDataSource) {
64-
DataSourceInitializer dataSourceInitializer = new DataSourceInitializer();
65-
ResourceLoader resourceLoader = new DefaultResourceLoader();
66-
67-
ResourceDatabasePopulator databasePopulator = new ResourceDatabasePopulator();
68-
databasePopulator.addScript(resourceLoader.getResource("books.sql"));
69-
70-
dataSourceInitializer.setDataSource(bookDataSource);
71-
dataSourceInitializer.setDatabasePopulator(databasePopulator);
72-
73-
return dataSourceInitializer;
64+
public ApplicationRunner booksDataSourceInitializer(@Qualifier("bookDataSource") DataSource bookDataSource) {
65+
return (args) -> {
66+
ResourceLoader resourceLoader = new DefaultResourceLoader();
67+
68+
ResourceDatabasePopulator databasePopulator = new ResourceDatabasePopulator();
69+
databasePopulator.addScript(resourceLoader.getResource("books.sql"));
70+
71+
databasePopulator.execute(bookDataSource);
72+
};
7473
}
7574

7675

graphql-jpa-query-example-merge/src/main/java/com/introproventures/graphql/jpa/query/example/starwars/StarwarsSchemaConfiguration.java

+16-18
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import org.hibernate.cfg.AvailableSettings;
1111
import org.hibernate.dialect.H2Dialect;
1212
import org.springframework.beans.factory.annotation.Qualifier;
13+
import org.springframework.boot.ApplicationRunner;
1314
import org.springframework.boot.context.properties.ConfigurationProperties;
1415
import org.springframework.boot.jdbc.DataSourceBuilder;
1516
import org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder;
@@ -18,7 +19,6 @@
1819
import org.springframework.context.annotation.Primary;
1920
import org.springframework.core.io.DefaultResourceLoader;
2021
import org.springframework.core.io.ResourceLoader;
21-
import org.springframework.jdbc.datasource.init.DataSourceInitializer;
2222
import org.springframework.jdbc.datasource.init.ResourceDatabasePopulator;
2323
import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
2424
import org.springframework.orm.jpa.support.SharedEntityManagerBean;
@@ -34,32 +34,29 @@ public class StarwarsSchemaConfiguration {
3434
@Bean
3535
@Primary
3636
@ConfigurationProperties(prefix = "starwars")
37-
@Qualifier("starWarsDataSource")
37+
@Qualifier("starWarsDataSource")
3838
public DataSource starWarsDataSource() {
3939
return DataSourceBuilder.create().build();
4040
}
4141

4242
@Bean
43-
public DataSourceInitializer starWarsDataSourceInitializer(@Qualifier("starWarsDataSource") DataSource starWarsDataSource) {
44-
DataSourceInitializer dataSourceInitializer = new DataSourceInitializer();
45-
ResourceLoader resourceLoader = new DefaultResourceLoader();
46-
47-
ResourceDatabasePopulator databasePopulator = new ResourceDatabasePopulator();
48-
databasePopulator.addScript(resourceLoader.getResource("starwars.sql"));
49-
50-
dataSourceInitializer.setDataSource(starWarsDataSource);
51-
dataSourceInitializer.setDatabasePopulator(databasePopulator);
52-
53-
return dataSourceInitializer;
43+
public ApplicationRunner starWarsDataSourceInitializer(@Qualifier("starWarsDataSource") DataSource starWarsDataSource) {
44+
return (args) -> {
45+
ResourceLoader resourceLoader = new DefaultResourceLoader();
46+
47+
ResourceDatabasePopulator databasePopulator = new ResourceDatabasePopulator();
48+
databasePopulator.addScript(resourceLoader.getResource("starwars.sql"));
49+
50+
databasePopulator.execute(starWarsDataSource);
51+
};
5452
}
5553

5654

5755
@Bean
5856
@Primary
5957
@Qualifier("starWarsEntityManagerFactory")
60-
public LocalContainerEntityManagerFactoryBean starWarsEntityManagerFactory(
61-
EntityManagerFactoryBuilder builder) {
62-
58+
public LocalContainerEntityManagerFactoryBean starWarsEntityManagerFactory(EntityManagerFactoryBuilder builder,
59+
@Qualifier("starWarsDataSource") DataSource starWarsDataSource) {
6360
Map<String, Object> properties = new HashMap<>();
6461
properties.put(AvailableSettings.HBM2DDL_AUTO, "create-drop");
6562
properties.put(AvailableSettings.HBM2DLL_CREATE_SCHEMAS, "true");
@@ -68,7 +65,7 @@ public LocalContainerEntityManagerFactoryBean starWarsEntityManagerFactory(
6865
properties.put(AvailableSettings.FORMAT_SQL, "true");
6966

7067
return builder
71-
.dataSource(starWarsDataSource())
68+
.dataSource(starWarsDataSource)
7269
.packages(Droid.class)
7370
.persistenceUnit("starwars")
7471
.properties(properties)
@@ -88,7 +85,8 @@ public static class GraphQLJpaQuerySchemaConfigurer implements GraphQLSchemaConf
8885

8986
private final EntityManager entityManager;
9087

91-
public GraphQLJpaQuerySchemaConfigurer(@Qualifier("starWarsEntityManager") EntityManager starWarsEntityManager) {
88+
public GraphQLJpaQuerySchemaConfigurer(@Qualifier("starWarsEntityManager") EntityManager starWarsEntityManager,
89+
@Qualifier("starWarsEntityManager") EntityManager starWarsEntit) {
9290
this.entityManager = starWarsEntityManager;
9391
}
9492

graphql-jpa-query-schema/src/test/java/com/introproventures/graphql/jpa/query/schema/BooksSchemaBuildTest.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ public void correctlyDerivesToManyOptionalFromGivenEntities() {
130130
.isPresent().get()
131131
.extracting(it -> it.getArgument("optional"))
132132
.extracting("defaultValue")
133-
.containsExactly(Boolean.FALSE);
133+
.isEqualTo(Boolean.FALSE);
134134
}
135135

136136
@Test
@@ -150,7 +150,7 @@ public void correctlyDerivesToOneOptionalFromGivenEntities() {
150150
.isPresent().get()
151151
.extracting(it -> it.getArgument("optional"))
152152
.extracting("defaultValue")
153-
.containsExactly(Boolean.TRUE);
153+
.isEqualTo(Boolean.TRUE);
154154
}
155155

156156
@Test
@@ -171,7 +171,7 @@ public void shouldBuildSchemaWithStringArrayAsStringListType() {
171171
.isInstanceOf(GraphQLList.class)
172172
.extracting("wrappedType")
173173
.extracting("name")
174-
.containsOnly("String");
174+
.isEqualTo("String");
175175
}
176176

177177
@Test

graphql-jpa-query-schema/src/test/java/com/introproventures/graphql/jpa/query/schema/CalculatedEntityTests.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ public void shouldInheritMethodDescriptionFromBaseClass() {
141141
.isPresent().get()
142142
.extracting("description")
143143
.isNotNull()
144-
.containsExactly("getParentTransientGetter");
144+
.isEqualTo("getParentTransientGetter");
145145
}
146146

147147
private Optional<GraphQLFieldDefinition> getFieldForType(String fieldName,

graphql-jpa-query-schema/src/test/java/com/introproventures/graphql/jpa/query/schema/GraphQLExecutorTests.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -2281,7 +2281,8 @@ public void queryWithEnumParameterShouldExecuteWithNoError() {
22812281
then(data)
22822282
.isNotNull().isNotEmpty()
22832283
.extracting("Books")
2284-
.flatExtracting("select")
2284+
.extracting("select")
2285+
.asList()
22852286
.extracting("id", "title")
22862287
.containsExactly(
22872288
tuple(7L,

graphql-jpa-query-schema/src/test/java/com/introproventures/graphql/jpa/query/schema/GraphQLWhereVariableBindingsTests.java

+12-6
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,8 @@ public void queryWithSimpleEqualsVariableBinding() throws IOException {
7777
Map<String, Object> result = executionResult.getData();
7878
then(result)
7979
.extracting("Books")
80-
.flatExtracting("select")
80+
.extracting("select")
81+
.asList()
8182
.hasSize(1)
8283
.extracting("id", "title", "genre")
8384
.containsOnly(tuple(2L, "War and Peace", NOVEL));
@@ -117,13 +118,15 @@ public void queryWithNestedWhereClauseVariableBinding() throws IOException {
117118
Map<String, Object> result = executionResult.getData();
118119
then(result)
119120
.extracting("Books")
120-
.flatExtracting("select")
121+
.extracting("select")
122+
.asList()
121123
.hasSize(2)
122124
.extracting("title")
123125
.containsOnly("War and Peace", "Anna Karenina");
124126
then(result)
125127
.extracting("Books")
126-
.flatExtracting("select")
128+
.extracting("select")
129+
.asList()
127130
.hasSize(2)
128131
.extracting("author")
129132
.extracting("id", "name")
@@ -160,7 +163,8 @@ public void queryWithInVariableBinding() throws IOException {
160163
Map<String, Object> result = executionResult.getData();
161164
then(result)
162165
.extracting("Books")
163-
.flatExtracting("select")
166+
.extracting("select")
167+
.asList()
164168
.extracting("genre")
165169
.containsOnly(PLAY);
166170
}
@@ -195,7 +199,8 @@ public void queryWithMultipleRestrictionForOneProperty() throws IOException {
195199
Map<String, Object> result = executionResult.getData();
196200
then(result)
197201
.extracting("Books")
198-
.flatExtracting("select")
202+
.extracting("select")
203+
.asList()
199204
.extracting("id", "title")
200205
.containsOnly(
201206
tuple(5L, "The Cherry Orchard"),
@@ -275,7 +280,8 @@ public void queryWithRestrictionsForMultipleProperties() throws IOException {
275280
Map<String, Object> result = executionResult.getData();
276281
then(result)
277282
.extracting("Books")
278-
.flatExtracting("select")
283+
.extracting("select")
284+
.asList()
279285
.extracting("id", "title")
280286
.containsOnly(tuple(5L, "The Cherry Orchard"));
281287
}

graphql-jpa-query-web/pom.xml

+4
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,10 @@
1919
<artifactId>spring-boot-starter-web</artifactId>
2020
<optional>true</optional>
2121
</dependency>
22+
<dependency>
23+
<groupId>org.springframework.boot</groupId>
24+
<artifactId>spring-boot-starter-validation</artifactId>
25+
</dependency>
2226
<dependency>
2327
<groupId>org.springframework</groupId>
2428
<artifactId>spring-tx</artifactId>

pom.xml

-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,6 @@
6161
</repository>
6262
</distributionManagement>
6363

64-
6564
<scm>
6665
<connection>scm:git:https://github.com/introproventures/graphql-jpa-query.git</connection>
6766
<developerConnection>scm:git:[email protected]:introproventures/graphql-jpa-query.git</developerConnection>

0 commit comments

Comments
 (0)