[INFO] Scanning for projects...
[INFO] 
[INFO] --------------------< blog.examples:java-libraries >--------------------
[INFO] Building java-libraries 1.0-SNAPSHOT
[INFO]   from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- clean:3.2.0:clean (default-clean) @ java-libraries ---
[INFO] 
[INFO] --- resources:3.3.1:resources (default-resources) @ java-libraries ---
[INFO] skip non existing resourceDirectory /Users/magicliang/Desktop/Programming/git/hexo-blog/examples/java-libraries/src/main/resources
[INFO] 
[INFO] --- compiler:3.14.1:compile (default-compile) @ java-libraries ---
[INFO] Recompiling the module because of changed source code.
[INFO] Compiling 2 source files with javac [debug release 8] to target/classes
[INFO] 
[INFO] --- resources:3.3.1:testResources (default-testResources) @ java-libraries ---
[INFO] skip non existing resourceDirectory /Users/magicliang/Desktop/Programming/git/hexo-blog/examples/java-libraries/src/test/resources
[INFO] 
[INFO] --- compiler:3.14.1:testCompile (default-testCompile) @ java-libraries ---
[INFO] Recompiling the module because of changed dependency.
[INFO] Compiling 3 source files with javac [debug release 8] to target/test-classes
[INFO] 
[INFO] --- surefire:3.5.4:test (default-test) @ java-libraries ---
[INFO] Using auto detected provider org.apache.maven.surefire.junitplatform.JUnitPlatformProvider
[INFO] 
[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running blog.libraries.Chapter02Test
CH02 modernListCopyOf=NOT_APPLICABLE API requires Java 10+
CH02 fullImmutableReused=true
CH02 partialImmutableReused=false
[INFO] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.094 s -- in blog.libraries.Chapter02Test
[INFO] Running blog.libraries.Chapter00Test
C00 order=[shop-b, shop-a], sizes=[2, 1], same-id-across-merchants=accepted, zero-price=0.00, source-clear=isolated
C00 same-merchant-duplicate=rejected, empty-catalog=accepted
C00 null/empty/negative/non-exact-price=rejected, identifier-normalization=none, 1.000=1.00
[INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.016 s -- in blog.libraries.Chapter00Test
[INFO] Running blog.libraries.Chapter01Test
01|absence|null/absent/empty distinguished; null API contracts asserted
01|U+180E|runtime=1.8|jdkWS=true|spaceChar=true|commons=true|guava=false
01|empty|length=0|codePoints=0|trim=true|jdkWS=true|spaceChar=true|guava=true|commons=true|isBlank=NOT_AVAILABLE
01|SPACE|length=1|codePoints=1|trim=true|jdkWS=true|spaceChar=true|guava=true|commons=true|isBlank=NOT_AVAILABLE
01|TAB|length=1|codePoints=1|trim=true|jdkWS=true|spaceChar=false|guava=true|commons=true|isBlank=NOT_AVAILABLE
01|CRLF|length=2|codePoints=2|trim=true|jdkWS=true|spaceChar=false|guava=true|commons=true|isBlank=NOT_AVAILABLE
01|NUL|length=1|codePoints=1|trim=true|jdkWS=false|spaceChar=false|guava=false|commons=false|isBlank=NOT_AVAILABLE
01|FS|length=1|codePoints=1|trim=true|jdkWS=true|spaceChar=false|guava=false|commons=true|isBlank=NOT_AVAILABLE
01|NBSP|length=1|codePoints=1|trim=false|jdkWS=false|spaceChar=true|guava=true|commons=false|isBlank=NOT_AVAILABLE
01|FIGURE_SPACE|length=1|codePoints=1|trim=false|jdkWS=false|spaceChar=true|guava=true|commons=false|isBlank=NOT_AVAILABLE
01|NARROW_NBSP|length=1|codePoints=1|trim=false|jdkWS=false|spaceChar=true|guava=true|commons=false|isBlank=NOT_AVAILABLE
01|EM_SPACE|length=1|codePoints=1|trim=false|jdkWS=true|spaceChar=true|guava=true|commons=true|isBlank=NOT_AVAILABLE
01|ZERO_WIDTH_SPACE|length=1|codePoints=1|trim=false|jdkWS=false|spaceChar=false|guava=false|commons=false|isBlank=NOT_AVAILABLE
01|IDEOGRAPHIC_SPACE|length=1|codePoints=1|trim=false|jdkWS=true|spaceChar=true|guava=true|commons=true|isBlank=NOT_AVAILABLE
01|NEL|length=1|codePoints=1|trim=false|jdkWS=false|spaceChar=false|guava=true|commons=false|isBlank=NOT_AVAILABLE
01|LETTER|length=3|codePoints=3|trim=false|jdkWS=false|spaceChar=false|guava=false|commons=false|isBlank=NOT_AVAILABLE
01|SUPPLEMENTARY|length=2|codePoints=1|trim=false|jdkWS=false|spaceChar=false|guava=false|commons=false|isBlank=NOT_AVAILABLE
01|LONE_HIGH_SURROGATE|length=1|codePoints=1|trim=false|jdkWS=false|spaceChar=false|guava=false|commons=false|isBlank=NOT_AVAILABLE
01|SPACE_AND_SURROGATE|length=2|codePoints=2|trim=false|jdkWS=false|spaceChar=false|guava=false|commons=false|isBlank=NOT_AVAILABLE
01|sku|valid original preserved; 8 invalid values rejected; trim collision demonstrated
[INFO] Tests run: 20, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.122 s -- in blog.libraries.Chapter01Test
[INFO] 
[INFO] Results:
[INFO] 
[INFO] Tests run: 29, Failures: 0, Errors: 0, Skipped: 0
[INFO] 
[INFO] 
[INFO] --- jar:3.4.2:jar (default-jar) @ java-libraries ---
[INFO] Building jar: /Users/magicliang/Desktop/Programming/git/hexo-blog/examples/java-libraries/target/java-libraries-1.0-SNAPSHOT.jar
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  01:54 min
[INFO] Finished at: 2026-10-02T15:20:18+08:00
[INFO] ------------------------------------------------------------------------
