@@ -54,6 +54,8 @@ void whenAsyncCompleteDeserialized_mustHaveValidProperties() throws IOException
54
54
55
55
Map <String , GeneratedFeature > features = docPrediction .getFields ();
56
56
57
+ // Direct access to the hashmap
58
+
57
59
Assertions .assertFalse (features .get ("address" ).isList ());
58
60
Assertions .assertEquals ("AVDA DE MADRID S-N MADRID MADRID" , features .get ("address" ).get (0 ).get ("value" ));
59
61
@@ -75,6 +77,24 @@ void whenAsyncCompleteDeserialized_mustHaveValidProperties() throws IOException
75
77
Assertions .assertTrue (features .get ("surnames" ).isList ());
76
78
Assertions .assertEquals ("ESPAÑOLA" , features .get ("surnames" ).get (0 ).get ("value" ));
77
79
Assertions .assertEquals ("ESPAÑOLA" , features .get ("surnames" ).get (1 ).get ("value" ));
80
+
81
+ // Access as a StringField without raw_value
82
+ StringField addressField = features .get ("address" ).asStringField ();
83
+ Assertions .assertEquals (
84
+ "AVDA DE MADRID S-N MADRID MADRID" ,
85
+ addressField .getValue ()
86
+ );
87
+ Assertions .assertNull (addressField .getRawValue ());
88
+ Assertions .assertNull (addressField .getConfidence ());
89
+ Assertions .assertNull (addressField .getPageId ());
90
+ Assertions .assertNull (addressField .getPolygon ());
91
+
92
+ // Access as a DateField
93
+ DateField expiryDateField = features .get ("expiry_date" ).asDateField ();
94
+ Assertions .assertEquals (
95
+ LocalDate .parse ("2025-01-01" ),
96
+ expiryDateField .getValue ()
97
+ );
78
98
}
79
99
80
100
@ Test
@@ -120,13 +140,12 @@ void whenSyncCompleteDeserialized_mustHaveValidProperties() throws IOException {
120
140
1 ,
121
141
customerName .get (0 ).get ("page_id" )
122
142
);
123
- System .out .println (customerName .get (0 ).get ("polygon" ).getClass ());
124
143
Assertions .assertEquals (
125
144
"Polygon with 4 points." ,
126
145
customerName .get (0 ).getAsPolygon ("polygon" ).toString ()
127
146
);
128
147
129
- // Access as a StringField
148
+ // Access as a StringField with raw_value
130
149
StringField customerNameField = customerName .asStringField ();
131
150
Assertions .assertEquals (
132
151
"JIRO DOI" ,
@@ -140,6 +159,36 @@ void whenSyncCompleteDeserialized_mustHaveValidProperties() throws IOException {
140
159
0.87 ,
141
160
customerNameField .getConfidence ()
142
161
);
162
+ Assertions .assertEquals (
163
+ 1 ,
164
+ customerNameField .getPageId ()
165
+ );
166
+ Assertions .assertEquals (
167
+ "Polygon with 4 points." ,
168
+ customerNameField .getPolygon ().toString ()
169
+ );
170
+
171
+ // Access as a StringField without raw_value
172
+ StringField supplierAddressField = features .get ("supplier_address" ).asStringField ();
173
+ Assertions .assertEquals (
174
+ "156 University Ave, Toronto ON, Canada M5H 2H7" ,
175
+ supplierAddressField .getValue ()
176
+ );
177
+ Assertions .assertNull (
178
+ supplierAddressField .getRawValue ()
179
+ );
180
+ Assertions .assertEquals (
181
+ 0.53 ,
182
+ supplierAddressField .getConfidence ()
183
+ );
184
+ Assertions .assertEquals (
185
+ 1 ,
186
+ supplierAddressField .getPageId ()
187
+ );
188
+ Assertions .assertEquals (
189
+ "Polygon with 4 points." ,
190
+ supplierAddressField .getPolygon ().toString ()
191
+ );
143
192
144
193
// Access as an AmountField
145
194
AmountField totalAmountField = features .get ("total_amount" ).asAmountField ();
0 commit comments