Cyberduck Mountain Duck CLI

Changeset 43115


Ignore:
Timestamp:
Nov 3, 2017 12:34:46 PM (4 years ago)
Author:
dkocher
Message:

Add test.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

    • Property subgit:lock changed from commit:1aedb56fc2c3533a1a6c2b5f11a1f18dff047f15 timestamp:2017-11-03T12:48:11.340 to commit:cd66582946ef0b5eeffdec6b7443295024424644 timestamp:2017-11-03T12:48:13.288
  • trunk/s3/src/test/java/ch/cyberduck/core/s3/S3AttributesFinderFeatureTest.java

    r42631 r43115  
    22
    33import ch.cyberduck.core.AbstractPath;
     4import ch.cyberduck.core.AlphanumericRandomStringService;
    45import ch.cyberduck.core.Credentials;
    56import ch.cyberduck.core.DisabledCancelCallback;
    67import ch.cyberduck.core.DisabledHostKeyCallback;
    78import ch.cyberduck.core.DisabledLoginCallback;
     9import ch.cyberduck.core.DisabledPasswordCallback;
    810import ch.cyberduck.core.DisabledPasswordStore;
    911import ch.cyberduck.core.Host;
     
    3234    public void testFindFileUsEast() throws Exception {
    3335        final S3Session session = new S3Session(
    34                 new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
    35                         new Credentials(
    36                                 System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
    37                         ))) {
     36            new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
     37                new Credentials(
     38                    System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
     39                ))) {
    3840            @Override
    3941            public S3Protocol.AuthenticationHeaderSignatureVersion getSignatureVersion() {
     
    5153        session.open(new DisabledHostKeyCallback());
    5254        final Path container = new Path("test-us-east-1-cyberduck", EnumSet.of(Path.Type.directory, Path.Type.volume));
    53         final Path test = new Path(container, UUID.randomUUID().toString() + ".txt", EnumSet.of(Path.Type.file));
     55        final Path test = new Path(container, new AlphanumericRandomStringService().random(), EnumSet.of(Path.Type.file));
    5456        new S3TouchFeature(session).touch(test, new TransferStatus());
    5557        final S3AttributesFinderFeature f = new S3AttributesFinderFeature(session);
     
    7375    public void testFindFileEuCentral() throws Exception {
    7476        final S3Session session = new S3Session(
    75                 new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
    76                         new Credentials(
    77                                 System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
    78                         ))) {
     77            new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
     78                new Credentials(
     79                    System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
     80                ))) {
    7981            @Override
    8082            public S3Protocol.AuthenticationHeaderSignatureVersion getSignatureVersion() {
     
    101103    public void testFindBucket() throws Exception {
    102104        final S3Session session = new S3Session(
    103                 new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
    104                         new Credentials(
    105                                 System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
    106                         )));
     105            new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
     106                new Credentials(
     107                    System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
     108                )));
    107109        session.open(new DisabledHostKeyCallback());
    108110        session.login(new DisabledPasswordStore(), new DisabledLoginCallback(), new DisabledCancelCallback());
     
    118120    public void testFindNotFound() throws Exception {
    119121        final S3Session session = new S3Session(
    120                 new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
    121                         new Credentials(
    122                                 System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
    123                         ))) {
     122            new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
     123                new Credentials(
     124                    System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
     125                ))) {
    124126            @Override
    125127            public S3Protocol.AuthenticationHeaderSignatureVersion getSignatureVersion() {
     
    138140    public void testFindPlaceholder() throws Exception {
    139141        final S3Session session = new S3Session(
    140                 new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
    141                         new Credentials(
    142                                 System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
    143                         )));
     142            new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
     143                new Credentials(
     144                    System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
     145                )));
    144146        session.open(new DisabledHostKeyCallback());
    145147        final Path container = new Path("test-us-east-1-cyberduck", EnumSet.of(Path.Type.directory, Path.Type.volume));
     
    154156
    155157    @Test
    156     public void testVersioning() throws Exception {
    157         final S3Session session = new S3Session(
    158                 new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
    159                         new Credentials(
    160                                 System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
    161                         )));
     158    public void testVersioningReadAttributesFile() throws Exception {
     159        final S3Session session = new S3Session(
     160            new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
     161                new Credentials(
     162                    System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
     163                )));
    162164        session.open(new DisabledHostKeyCallback());
    163165        final PathAttributes attributes = new PathAttributes();
    164166        // Retrieve latest object version
    165167        attributes.setVersionId("a.wvRLBNdY1MncqxF5Jt.hPn3NejhheK");
     168        final Path bucket = new Path("versioning-test-us-east-1-cyberduck", EnumSet.of(Path.Type.volume));
    166169        assertEquals("a.wvRLBNdY1MncqxF5Jt.hPn3NejhheK", new S3AttributesFinderFeature(session).find(
    167                 new Path("/versioning-test-us-east-1-cyberduck/test", EnumSet.of(AbstractPath.Type.file))).getVersionId());
     170            new Path(bucket, "test", EnumSet.of(AbstractPath.Type.file))).getVersionId());
     171        session.close();
     172    }
     173
     174    @Test
     175    public void testVersioningReadAttributesDeleteMarker() throws Exception {
     176        final S3Session session = new S3Session(
     177            new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
     178                new Credentials(
     179                    System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
     180                )));
     181        session.open(new DisabledHostKeyCallback());
     182        final Path bucket = new Path("versioning-test-us-east-1-cyberduck", EnumSet.of(Path.Type.volume));
     183        final Path test = new Path(bucket, new AlphanumericRandomStringService().random(), EnumSet.of(Path.Type.file));
     184        new S3TouchFeature(session).touch(test, new TransferStatus());
     185        final String versionId = new S3AttributesFinderFeature(session).find(test).getVersionId();
     186        assertNotNull(versionId);
     187        new S3DefaultDeleteFeature(session).delete(Collections.singletonList(test), new DisabledPasswordCallback(), new Delete.DisabledCallback());
     188        final String deleteMarker = new S3AttributesFinderFeature(session).find(test).getVersionId();
     189        assertNotNull(deleteMarker);
     190        assertNotEquals(versionId, deleteMarker);
    168191        session.close();
    169192    }
     
    172195    public void testReadTildeInKey() throws Exception {
    173196        final S3Session session = new S3Session(
    174                 new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
    175                         new Credentials(
    176                                 System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
    177                         )));
     197            new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
     198                new Credentials(
     199                    System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
     200                )));
    178201        session.setSignatureVersion(S3Protocol.AuthenticationHeaderSignatureVersion.AWS2);
    179202        session.open(new DisabledHostKeyCallback());
     
    191214    public void testReadAtSignInKey() throws Exception {
    192215        final S3Session session = new S3Session(
    193                 new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
    194                         new Credentials(
    195                                 System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
    196                         )));
     216            new Host(new S3Protocol(), new S3Protocol().getDefaultHostname(),
     217                new Credentials(
     218                    System.getProperties().getProperty("s3.key"), System.getProperties().getProperty("s3.secret")
     219                )));
    197220        session.setSignatureVersion(S3Protocol.AuthenticationHeaderSignatureVersion.AWS2);
    198221        session.open(new DisabledHostKeyCallback());
Note: See TracChangeset for help on using the changeset viewer.