Skip to content

Commit 0f01e62

Browse files
authored
Merge pull request #15191 from iterate-ch/bugfix/MD-20118
Comparison for files in B2
2 parents 6bd9fde + c7aab04 commit 0f01e62

File tree

3 files changed

+15
-6
lines changed

3 files changed

+15
-6
lines changed

backblaze/src/main/java/ch/cyberduck/core/b2/B2Protocol.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@
1818
import ch.cyberduck.core.AbstractProtocol;
1919
import ch.cyberduck.core.PathContainerService;
2020
import ch.cyberduck.core.Scheme;
21-
import ch.cyberduck.core.synchronization.ChecksumComparisonService;
2221
import ch.cyberduck.core.synchronization.ComparisonService;
2322
import ch.cyberduck.core.synchronization.DefaultComparisonService;
23+
import ch.cyberduck.core.synchronization.VersionIdComparisonService;
2424
import ch.cyberduck.core.text.DefaultLexicographicOrderComparator;
2525

2626
import java.util.Comparator;
@@ -94,7 +94,7 @@ public <T> T getFeature(final Class<T> type) {
9494
return (T) new B2PathContainerService();
9595
}
9696
if(type == ComparisonService.class) {
97-
return (T) new DefaultComparisonService(new ChecksumComparisonService(), ComparisonService.disabled);
97+
return (T) new DefaultComparisonService(new VersionIdComparisonService(), ComparisonService.disabled);
9898
}
9999
return super.getFeature(type);
100100
}

backblaze/src/test/java/ch/cyberduck/core/b2/B2LargeUploadServiceTest.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import ch.cyberduck.core.DisabledLoginCallback;
2222
import ch.cyberduck.core.Local;
2323
import ch.cyberduck.core.Path;
24+
import ch.cyberduck.core.PathAttributes;
2425
import ch.cyberduck.core.exception.AccessDeniedException;
2526
import ch.cyberduck.core.exception.BackgroundException;
2627
import ch.cyberduck.core.features.Delete;
@@ -79,7 +80,9 @@ public void testUpload() throws Exception {
7980

8081
upload.upload(test, local, new BandwidthThrottle(BandwidthThrottle.UNLIMITED), new DisabledStreamListener(),
8182
status, new DisabledConnectionCallback());
82-
assertEquals(checksum, new B2AttributesFinderFeature(session, fileid).find(test).getChecksum());
83+
final PathAttributes attr = new B2AttributesFinderFeature(session, fileid).find(test);
84+
assertNotEquals(Checksum.NONE, attr.getChecksum());
85+
assertEquals(checksum, attr.getChecksum());
8386
status.validate();
8487
assertTrue(status.isComplete());
8588
assertEquals(content.length, status.getResponse().getSize());

backblaze/src/test/java/ch/cyberduck/core/worker/B2SingleTransferWorkerTest.java

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import ch.cyberduck.core.Local;
2727
import ch.cyberduck.core.LoginConnectionService;
2828
import ch.cyberduck.core.Path;
29+
import ch.cyberduck.core.PathAttributes;
2930
import ch.cyberduck.core.b2.B2AttributesFinderFeature;
3031
import ch.cyberduck.core.b2.B2DeleteFeature;
3132
import ch.cyberduck.core.b2.B2LargeUploadService;
@@ -35,6 +36,7 @@
3536
import ch.cyberduck.core.b2.B2WriteFeature;
3637
import ch.cyberduck.core.features.Delete;
3738
import ch.cyberduck.core.features.Upload;
39+
import ch.cyberduck.core.io.Checksum;
3840
import ch.cyberduck.core.notification.DisabledNotificationService;
3941
import ch.cyberduck.core.ssl.DefaultX509KeyManager;
4042
import ch.cyberduck.core.ssl.DefaultX509TrustManager;
@@ -65,8 +67,7 @@
6567
import java.util.UUID;
6668
import java.util.concurrent.atomic.AtomicBoolean;
6769

68-
import static org.junit.Assert.assertEquals;
69-
import static org.junit.Assert.assertTrue;
70+
import static org.junit.Assert.*;
7071

7172
@Category(IntegrationTest.class)
7273
public class B2SingleTransferWorkerTest extends VaultTest {
@@ -95,6 +96,9 @@ public String getProperty(final String key) {
9596
if("b2.upload.largeobject.concurrency".equals(key)) {
9697
return String.valueOf(5);
9798
}
99+
if("queue.upload.checksum.calculate".equals(key)) {
100+
return String.valueOf(true);
101+
}
98102
return super.getProperty(key);
99103
}
100104
};
@@ -151,7 +155,9 @@ public TransferAction prompt(final TransferItem file) {
151155
local.delete();
152156
assertTrue(t.isComplete());
153157
final B2VersionIdProvider fileid = new B2VersionIdProvider(session);
154-
assertEquals(content.length, new B2AttributesFinderFeature(session, fileid).find(test).getSize());
158+
final PathAttributes attr = new B2AttributesFinderFeature(session, fileid).find(test);
159+
assertNotEquals(Checksum.NONE, attr.getChecksum());
160+
assertEquals(content.length, attr.getSize());
155161
assertEquals(content.length, counter.getRecv(), 0L);
156162
assertEquals(content.length, counter.getSent(), 0L);
157163
assertTrue(failed.get());

0 commit comments

Comments
 (0)