8000 [#1099] Update tests for new interfaces · hibernate/hibernate-reactive@7b33be0 · GitHub
[go: up one dir, main page]

Skip to content

Commit 7b33be0

Browse files
committed
[#1099] Update tests for new interfaces
1 parent 5618ae2 commit 7b33be0

File tree

4 files changed

+42
-21
lines changed

4 files changed

+42
-21
lines changed

hibernate-reactive-core/src/test/java/org/hibernate/reactive/CurrentUser.java

Lines changed: 27 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,17 @@
55
*/
66
package org.hibernate.reactive;
77

8-
import org.hibernate.Session;
9-
import org.hibernate.tuple.ValueGenerator;
8+
import java.util.Objects;
9+
import java.util.concurrent.CompletionStage;
10+
11+
import org.hibernate.reactive.mutiny.Mutiny;
12+
import org.hibernate.reactive.stage.Stage;
13+
import org.hibernate.reactive.tuple.MutinyValueGenerator;
14+
import org.hibernate.reactive.tuple.StageValueGenerator;
15+
16+
import io.smallrye.mutiny.Uni;
17+
18+
import static org.hibernate.reactive.util.impl.CompletionStages.completedFuture;
1019

1120
/**
1221
* An example from the Hibernate ORM documentation that we use for testing of
@@ -34,11 +43,24 @@ public String get() {
3443
return storage.get();
3544
}
3645

37-
public static class LoggedUserGenerator implements ValueGenerator<String> {
46+
public static class LoggedUserGeneratorWithStage implements StageValueGenerator<String> {
3847

3948
@Override
40-
public String generateValue(Session session, Object owner) {
41-
return CurrentUser.INSTANCE.get();
49+
public CompletionStage<String> generateValue(Stage.Session session, Object owner) {
50+
Objects.nonNull( session );
51+
String value = CurrentUser.INSTANCE.get();
52+
return completedFuture( value );
4253
}
4354
}
55+
56+
public static class LoggedUserGeneratorWithMutiny implements MutinyValueGenerator<String> {
57+
58+
@Override
59+
public Uni<String> generateValue(Mutiny.Session session, Object owner) {
60+
Objects.nonNull( session );
61+
String value = CurrentUser.INSTANCE.get();
62+
return Uni.createFrom().item( value );
63+
}
64+
}
65+
4466
}

hibernate-reactive-core/src/test/java/org/hibernate/reactive/GeneratedPropertyJoinedTableTest.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030

3131
import io.vertx.ext.unit.TestContext;
3232

33-
import static org.hibernate.reactive.CurrentUser.LoggedUserGenerator;
3433
import static org.hibernate.reactive.containers.DatabaseConfiguration.DBType.COCKROACHDB;
3534
import static org.hibernate.reactive.containers.DatabaseConfiguration.DBType.MYSQL;
3635
import static org.hibernate.reactive.containers.DatabaseConfiguration.DBType.POSTGRESQL;
@@ -41,7 +40,7 @@
4140
*/
4241
public class GeneratedPropertyJoinedTableTest extends BaseReactiveTest {
4342

44-
// It requires native queries so we only test this on Postgres
43+
// It requires native queries, so it won't work for every db
4544
@Rule
4645
public DatabaseSelectionRule selectionRule = runOnlyFor( POSTGRESQL, COCKROACHDB, MYSQL );
4746

@@ -155,7 +154,7 @@ static class GeneratedRegularParent {
155154
@Column(columnDefinition = "varchar(600) generated always as (firstname || ' ' || lastname) stored")
156155
public String fullName;
157156

158-
@GeneratorType(type = LoggedUserGenerator.class, when = GenerationTime.INSERT)
157+
@GeneratorType(type = CurrentUser.LoggedUserGeneratorWithStage.class, when = GenerationTime.INSERT)
159158
public String createdBy;
160159

161160
public GeneratedRegularParent() {
@@ -175,7 +174,7 @@ static class GeneratedRegular extends GeneratedRegularParent {
175174
@ColumnDefault("current_timestamp")
176175
public Date createdAt;
177176

178-
@GeneratorType(type = LoggedUserGenerator.class, when = GenerationTime.ALWAYS)
177+
@GeneratorType(type = CurrentUser.LoggedUserGeneratorWithMutiny.class, when = GenerationTime.ALWAYS)
179178
public String updatedBy;
180179

181180
@Generated(GenerationTime.NEVER)
@@ -204,7 +203,7 @@ static class GeneratedWithIdentityParent {
204203
@Column(columnDefinition = "varchar(600) generated always as (firstname || ' ' || lastname) stored")
205204
public String fullName;
206205

207-
@GeneratorType(type = LoggedUserGenerator.class, when = GenerationTime.INSERT)
206+
@GeneratorType(type = CurrentUser.LoggedUserGeneratorWithMutiny.class, when = GenerationTime.INSERT)
208207
public String createdBy;
209208

210209
public GeneratedWithIdentityParent() {
@@ -224,7 +223,7 @@ static class GeneratedWithIdentity extends GeneratedWithIdentityParent {
224223
@ColumnDefault("current_timestamp")
225224
public Date createdAt;
226225

227-
@GeneratorType(type = LoggedUserGenerator.class, when = GenerationTime.ALWAYS)
226+
@GeneratorType(type = CurrentUser.LoggedUserGeneratorWithStage.class, when = GenerationTime.ALWAYS)
228227
public String updatedBy;
229228

230229
@Generated(GenerationTime.NEVER)

hibernate-reactive-core/src/test/java/org/hibernate/reactive/GeneratedPropertySingleTableTest.java

Lines 2D77 changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929

3030
import io.vertx.ext.unit.TestContext;
3131

32-
import static org.hibernate.reactive.CurrentUser.LoggedUserGenerator;
3332
import static org.hibernate.reactive.containers.DatabaseConfiguration.DBType.COCKROACHDB;
3433
import static org.hibernate.reactive.containers.DatabaseConfiguration.DBType.MYSQL;
3534
import static org.hibernate.reactive.containers.DatabaseConfiguration.DBType.POSTGRESQL;
@@ -40,7 +39,9 @@
4039
*/
4140
public class GeneratedPropertySingleTableTest extends BaseReactiveTest {
4241

43-
@Rule // Because it uses native queries
42+
43+
// It requires native queries, so it won't work for every db
44+
@Rule
4445
public DatabaseSelectionRule selectionRule = runOnlyFor( POSTGRESQL, COCKROACHDB, MYSQL );
4546

4647
@Override
@@ -161,10 +162,10 @@ static class GeneratedRegular {
161162
@ColumnDefault("current_timestamp")
162163
public Date createdAt;
163164

164-
@GeneratorType(type = LoggedUserGenerator.class, when = GenerationTime.INSERT)
165+
@GeneratorType(type = CurrentUser.LoggedUserGeneratorWithMutiny.class, when = GenerationTime.INSERT)
165166
public String createdBy;
166167

167-
@GeneratorType(type = LoggedUserGenerator.class, when = GenerationTime.ALWAYS)
168+
@GeneratorType(type = CurrentUser.LoggedUserGeneratorWithStage.class, when = GenerationTime.ALWAYS)
168169
public String updatedBy;
169170

170171
@Generated(GenerationTime.NEVER)
@@ -200,10 +201,10 @@ static class GeneratedWithIdentity {
200201
@ColumnDefault("current_timestamp")
201202
public Date createdAt;
202203

203-
@GeneratorType(type = LoggedUserGenerator.class, when = GenerationTime.INSERT)
204+
@GeneratorType(type = CurrentUser.LoggedUserGeneratorWithMutiny.class, when = GenerationTime.INSERT)
204205
public String createdBy;
205206

206-
@GeneratorType(type = LoggedUserGenerator.class, when = GenerationTime.ALWAYS)
207+
@GeneratorType(type = CurrentUser.LoggedUserGeneratorWithStage.class, when = GenerationTime.ALWAYS)
207208
public String updatedBy;
208209

209 F438 210
@Generated(GenerationTime.NEVER)

hibernate-reactive-core/src/test/java/org/hibernate/reactive/GeneratedPropertyUnionSubclassesTest.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030

3131
import io.vertx.ext.unit.TestContext;
3232

33-
import static org.hibernate.reactive.CurrentUser.LoggedUserGenerator;
3433
import static org.hibernate.reactive.containers.DatabaseConfiguration.DBType.COCKROACHDB;
3534
import static org.hibernate.reactive.containers.DatabaseConfiguration.DBType.MYSQL;
3635
import static org.hibernate.reactive.containers.DatabaseConfiguration.DBType.POSTGRESQL;
@@ -44,7 +43,7 @@
4443
*/
4544
public class GeneratedPropertyUnionSubclassesTest extends BaseReactiveTest {
4645

47-
// It requires native queries so we only test this on Postgres
46+
// It requires native queries, so it won't work for every db
4847
@Rule
4948
public DatabaseSelectionRule selectionRule = runOnlyFor( POSTGRESQL, COCKROACHDB, MYSQL );
5049

@@ -117,7 +116,7 @@ static class GeneratedRegularParent {
117116
@Column(columnDefinition = "varchar(600) generated always as (firstname || ' ' || lastname) stored")
118117
public String fullName;
119118

120-
@GeneratorType(type = LoggedUserGenerator.class, when = GenerationTime.INSERT)
119+
@GeneratorType(type = CurrentUser.LoggedUserGeneratorWithMutiny.class, when = GenerationTime.INSERT)
121120
public String createdBy;
122121

123122
public GeneratedRegularParent() {
@@ -137,7 +136,7 @@ static class GeneratedRegular extends GeneratedRegularParent {
137136
@ColumnDefault("current_timestamp")
138137
public Date createdAt;
139138

140-
@GeneratorType(type = LoggedUserGenerator.class, when = GenerationTime.ALWAYS)
139+
@GeneratorType(type = CurrentUser.LoggedUserGeneratorWithStage.class, when = GenerationTime.ALWAYS)
141140
public String updatedBy;
142141

143142
@Generated(GenerationTime.NEVER)

0 commit comments

Comments
 (0)
0