44package com .marklogic .client .test .document ;
55
66import com .marklogic .client .DatabaseClient ;
7- import com .marklogic .client .document .*;
7+ import com .marklogic .client .document .DocumentPage ;
8+ import com .marklogic .client .document .DocumentRecord ;
9+ import com .marklogic .client .document .DocumentWriteSet ;
10+ import com .marklogic .client .document .JSONDocumentManager ;
811import com .marklogic .client .io .BytesHandle ;
912import com .marklogic .client .io .DocumentMetadataHandle ;
1013import com .marklogic .client .io .StringHandle ;
1114import com .marklogic .client .query .StructuredQueryBuilder ;
1215import com .marklogic .client .query .StructuredQueryDefinition ;
16+ import com .marklogic .client .test .AbstractClientTest ;
1317import com .marklogic .client .test .Common ;
14- import org .junit .jupiter .api .Disabled ;
1518import org .junit .jupiter .api .Test ;
1619
1720import static org .junit .jupiter .api .Assertions .assertEquals ;
1821import static org .junit .jupiter .api .Assertions .assertTrue ;
1922
20- class ReadDocumentPageTest {
23+ class ReadDocumentPageTest extends AbstractClientTest {
2124
25+ /**
26+ * Verifies that the jakarta.mail library, instead of javax.mail, can probably read the URI.
27+ * See MLE-15748, which pertains to issues with javax.mail only allowing US-ASCII characters.
28+ */
2229 @ Test
2330 void test () {
24- Common .deleteUrisWithPattern ("/aaa-page/*" );
25-
2631 final String uri = "/aaa-page/太田佳伸のXMLファイル.xml" ;
2732 DocumentRecord documentRecord ;
2833 try (DatabaseClient client = Common .newClient ()) {
@@ -38,8 +43,24 @@ void test() {
3843 }
3944
4045 @ Test
41- @ Disabled ("Disabling for now because this seems to be a server bug." )
42- void testEmptyDocWithNoExtension () {
46+ void emptyTextDocument () {
47+ final String uri = "/sample/empty-file.txt" ;
48+
49+ try (DatabaseClient client = Common .newClient ()) {
50+ JSONDocumentManager documentManager = client .newJSONDocumentManager ();
51+ StructuredQueryDefinition query = new StructuredQueryBuilder ().document (uri );
52+ DocumentRecord documentRecord ;
53+ try (DocumentPage documentPage = documentManager .search (query , 1 )) {
54+ assertTrue (documentPage .hasNext (), "Expected a document in the page, but none was found." );
55+ documentRecord = documentPage .next ();
56+ }
57+ String actualUri = documentRecord .getUri ();
58+ assertEquals (uri , actualUri , "The URI of the empty document should match the one written." );
59+ }
60+ }
61+
62+ @ Test
63+ void emptyDocWithNoExtension () {
4364 final String collection = "empty-binary-test" ;
4465
4566 try (DatabaseClient client = Common .newClient ()) {
0 commit comments