11package com .scalar .db .storage .jdbc ;
22
3+ import static org .mockito .ArgumentMatchers .any ;
4+ import static org .mockito .Mockito .doThrow ;
35import static org .mockito .Mockito .verify ;
46
57import com .scalar .db .api .ScanAll ;
68import com .scalar .db .api .TableMetadata ;
79import com .scalar .db .common .StorageInfoProvider ;
810import com .scalar .db .common .TableMetadataManager ;
911import com .scalar .db .config .DatabaseConfig ;
12+ import org .assertj .core .api .Assertions ;
1013import org .junit .jupiter .api .BeforeEach ;
1114import org .junit .jupiter .api .Test ;
1215import org .mockito .Mock ;
@@ -32,7 +35,7 @@ public void setUp() throws Exception {
3235 }
3336
3437 @ Test
35- public void checkOrderingsForScanAll_ShouldInvokeFurtherCheckOnRdbEngine () {
38+ public void checkOrderingsForScanAll_ShouldInvokeAdditionalCheckOnRdbEngine () {
3639 // Arrange
3740 // Act
3841 operationChecker .checkOrderingsForScanAll (scanAll , tableMetadata );
@@ -41,4 +44,20 @@ public void checkOrderingsForScanAll_ShouldInvokeFurtherCheckOnRdbEngine() {
4144 verify (rdbEngine )
4245 .throwIfCrossPartitionScanOrderingOnBlobColumnNotSupported (scanAll , tableMetadata );
4346 }
47+
48+ @ Test
49+ public void checkOrderingsForScanAll_WhenAdditionalCheckThrows_ShouldPropagateException () {
50+ // Arrange
51+ Exception exception = new RuntimeException ();
52+ doThrow (exception ).when (rdbEngine ).throwIfCrossPartitionScanOrderingOnBlobColumnNotSupported (any (), any ());
53+
54+ // Act
55+ Assertions .assertThatThrownBy (
56+ () -> operationChecker .checkOrderingsForScanAll (scanAll , tableMetadata ))
57+ .isEqualTo (exception );
58+
59+ // Assert
60+ verify (rdbEngine )
61+ .throwIfCrossPartitionScanOrderingOnBlobColumnNotSupported (scanAll , tableMetadata );
62+ }
4463}
0 commit comments