3232import com .navercorp .fixturemonkey .api .arbitrary .JavaTimeArbitraryGeneratorSet ;
3333import com .navercorp .fixturemonkey .api .arbitrary .JavaTypeArbitraryGeneratorSet ;
3434import com .navercorp .fixturemonkey .api .introspector .ArbitraryIntrospector ;
35- import com .navercorp .fixturemonkey .api .introspector .ArbitraryIntrospectorResult ;
3635import com .navercorp .fixturemonkey .api .introspector .ArrayIntrospector ;
37- import com .navercorp .fixturemonkey .api .introspector .BeanArbitraryIntrospector ;
3836import com .navercorp .fixturemonkey .api .introspector .BooleanIntrospector ;
3937import com .navercorp .fixturemonkey .api .introspector .EnumIntrospector ;
4038import com .navercorp .fixturemonkey .api .introspector .FunctionalInterfaceArbitraryIntrospector ;
5654import com .navercorp .fixturemonkey .api .matcher .AssignableTypeMatcher ;
5755import com .navercorp .fixturemonkey .api .matcher .MatcherOperator ;
5856
57+ /**
58+ * This is a builder to generate the default {@link ArbitraryGenerator}.
59+ * It is for Java types. For example, primitives, collections, maps, etc.
60+ */
5961@ SuppressWarnings ("UnusedReturnValue" )
60- @ API (since = "0.4.0" , status = Status .MAINTAINED )
62+ @ API (since = "0.4.0" , status = Status .INTERNAL )
6163public final class JavaDefaultArbitraryGeneratorBuilder {
62- public static final ArbitraryIntrospector JAVA_INTROSPECTOR = new MatchArbitraryIntrospector (
64+ @ Deprecated
65+ public static final ArbitraryIntrospector UNCONSTRAINT_JAVA_INTROSPECTOR = new MatchArbitraryIntrospector (
6366 Arrays .asList (
6467 new BooleanIntrospector (),
6568 new EnumIntrospector (),
@@ -88,15 +91,16 @@ public final class JavaDefaultArbitraryGeneratorBuilder {
8891 new SingleGenericCollectionIntrospector ()
8992 )
9093 );
91- public static final ArbitraryIntrospector DEFAULT_FALLBACK_INTROSPECTOR =
92- (context ) -> ArbitraryIntrospectorResult .NOT_INTROSPECTED ;
9394
94- private ArbitraryIntrospector priorityIntrospector = JavaDefaultArbitraryGeneratorBuilder .JAVA_INTROSPECTOR ;
95+ /**
96+ * It contains the Java type, which cannot be constrained programmatically.
97+ * It may vary from time to time.
98+ */
99+ private ArbitraryIntrospector unconstraintJavaIntrospector =
100+ JavaDefaultArbitraryGeneratorBuilder .UNCONSTRAINT_JAVA_INTROSPECTOR ;
95101 private ArbitraryIntrospector containerIntrospector =
96102 JavaDefaultArbitraryGeneratorBuilder .JAVA_CONTAINER_INTROSPECTOR ;
97- private ArbitraryIntrospector objectIntrospector = BeanArbitraryIntrospector .INSTANCE ;
98103
99- private ArbitraryIntrospector fallbackIntrospector = DEFAULT_FALLBACK_INTROSPECTOR ;
100104 @ SuppressWarnings ("assignment" )
101105 private JavaTypeArbitraryGeneratorSet javaTypeArbitraryGeneratorSet = null ;
102106 @ SuppressWarnings ("assignment" )
@@ -105,15 +109,11 @@ public final class JavaDefaultArbitraryGeneratorBuilder {
105109 JavaDefaultArbitraryGeneratorBuilder () {
106110 }
107111
108- public JavaDefaultArbitraryGeneratorBuilder priorityIntrospector (ArbitraryIntrospector priorityIntrospector ) {
109- this .priorityIntrospector = priorityIntrospector ;
110- return this ;
111- }
112-
113- public JavaDefaultArbitraryGeneratorBuilder priorityIntrospector (
114- UnaryOperator <ArbitraryIntrospector > priorityIntrospector
112+ @ Deprecated
113+ public JavaDefaultArbitraryGeneratorBuilder unconstraintJavaIntrospector (
114+ UnaryOperator <ArbitraryIntrospector > unconstraintJavaIntrospectorOperator
115115 ) {
116- this .priorityIntrospector = priorityIntrospector .apply (this . priorityIntrospector );
116+ this .unconstraintJavaIntrospector = unconstraintJavaIntrospectorOperator .apply (unconstraintJavaIntrospector );
117117 return this ;
118118 }
119119
@@ -129,30 +129,6 @@ public JavaDefaultArbitraryGeneratorBuilder containerIntrospector(
129129 return this ;
130130 }
131131
132- public JavaDefaultArbitraryGeneratorBuilder objectIntrospector (ArbitraryIntrospector objectIntrospector ) {
133- this .objectIntrospector = objectIntrospector ;
134- return this ;
135- }
136-
137- public JavaDefaultArbitraryGeneratorBuilder objectIntrospector (
138- UnaryOperator <ArbitraryIntrospector > objectIntrospector
139- ) {
140- this .objectIntrospector = objectIntrospector .apply (this .objectIntrospector );
141- return this ;
142- }
143-
144- public JavaDefaultArbitraryGeneratorBuilder fallbackIntrospector (ArbitraryIntrospector fallbackIntrospector ) {
145- this .fallbackIntrospector = fallbackIntrospector ;
146- return this ;
147- }
148-
149- public JavaDefaultArbitraryGeneratorBuilder fallbackIntrospector (
150- UnaryOperator <ArbitraryIntrospector > fallbackIntrospector
151- ) {
152- this .fallbackIntrospector = fallbackIntrospector .apply (this .fallbackIntrospector );
153- return this ;
154- }
155-
156132 public JavaDefaultArbitraryGeneratorBuilder javaTypeArbitraryGeneratorSet (
157133 JavaTypeArbitraryGeneratorSet javaTypeArbitraryGeneratorSet
158134 ) {
@@ -173,10 +149,8 @@ public IntrospectedArbitraryGenerator build() {
173149 Arrays .asList (
174150 new JavaArbitraryIntrospector (this .javaTypeArbitraryGeneratorSet ),
175151 new JavaTimeArbitraryIntrospector (this .javaTimeArbitraryGeneratorSet ),
176- this .priorityIntrospector ,
177- this .containerIntrospector ,
178- this .objectIntrospector ,
179- this .fallbackIntrospector
152+ this .unconstraintJavaIntrospector ,
153+ this .containerIntrospector
180154 )
181155 )
182156 );
0 commit comments