3030import java .util .Set ;
3131import java .util .concurrent .TimeUnit ;
3232
33+ import com .amazonaws .services .s3 .internal .Constants ;
3334import com .upplication .s3fs .util .*;
3435import org .junit .After ;
3536import org .junit .Before ;
@@ -58,6 +59,18 @@ public void missconfigure() {
5859 s3fsProvider .createFileSystem (S3_GLOBAL_URI , props );
5960 }
6061
62+ @ Test
63+ public void newS3FileSystemWithEmptyHostAndUserInfo () throws IOException {
64+ FileSystem s3fs = s3fsProvider .newFileSystem (URI .create ("s3:///bucket/file" ), ImmutableMap .<String , Object >of ());
65+ assertEquals (Constants .S3_HOSTNAME , ((S3FileSystem ) s3fs ).getKey ());
66+ }
67+
68+ @ Test
69+ public void newS3FileSystemWithEmptyHost () throws IOException {
70+ FileSystem s3fs = s3fsProvider .newFileSystem (URI .create ("s3://access-key:secret-key@/bucket/file" ), ImmutableMap .<String , Object >of ());
71+ assertEquals ("access-key:secret-key@" + Constants .S3_HOSTNAME , ((S3FileSystem ) s3fs ).getKey ());
72+ }
73+
6174 @ Test
6275 public void createsAuthenticatedByEnv () {
6376 Map <String , ?> env = buildFakeEnv ();
@@ -105,12 +118,12 @@ public void createAuthenticatedBySystemEnvironment() {
105118 doReturn (secretKey ).when (s3fsProvider ).systemGetEnv (SECRET_KEY );
106119 doCallRealMethod ().when (s3fsProvider ).overloadPropertiesWithSystemEnv (any (Properties .class ), anyString ());
107120
108- s3fsProvider .newFileSystem (S3_GLOBAL_URI , ImmutableMap .<String , Object > of ());
121+ s3fsProvider .newFileSystem (S3_GLOBAL_URI , ImmutableMap .<String , Object >of ());
109122
110123 verify (s3fsProvider ).createFileSystem (eq (S3_GLOBAL_URI ), argThat (new ArgumentMatcher <Properties >() {
111124 @ Override
112125 public boolean matches (Object argument ) {
113- Properties called = (Properties )argument ;
126+ Properties called = (Properties ) argument ;
114127 assertEquals (accessKey , called .getProperty (ACCESS_KEY ));
115128 assertEquals (secretKey , called .getProperty (SECRET_KEY ));
116129 return true ;
@@ -146,7 +159,7 @@ public void createWithOnlyAccessKey() {
146159 Properties props = new Properties ();
147160 props .setProperty (ACCESS_KEY , "better access key" );
148161 doReturn (props ).when (s3fsProvider ).loadAmazonProperties ();
149- s3fsProvider .newFileSystem (S3_GLOBAL_URI , ImmutableMap .<String , Object > of ());
162+ s3fsProvider .newFileSystem (S3_GLOBAL_URI , ImmutableMap .<String , Object >of ());
150163 }
151164
152165 @ Test (expected = IllegalArgumentException .class )
@@ -169,12 +182,12 @@ public void createWithWrongEnv() {
169182 Map <String , Object > env = ImmutableMap .<String , Object > builder ().put (ACCESS_KEY , 1234 ).put (SECRET_KEY , "secret key" ).build ();
170183 FileSystem fileSystem = s3fsProvider .newFileSystem (S3_GLOBAL_URI , env );
171184 assertNotNull (fileSystem );
172- s3fsProvider .newFileSystem (S3_GLOBAL_URI , ImmutableMap .<String , Object > of ());
185+ s3fsProvider .newFileSystem (S3_GLOBAL_URI , ImmutableMap .<String , Object >of ());
173186 }
174187
175188 @ Test
176189 public void getFileSystem () {
177- FileSystem fileSystem = s3fsProvider .newFileSystem (S3_GLOBAL_URI , ImmutableMap .<String , Object > of ());
190+ FileSystem fileSystem = s3fsProvider .newFileSystem (S3_GLOBAL_URI , ImmutableMap .<String , Object >of ());
178191 assertNotNull (fileSystem );
179192 fileSystem = s3fsProvider .getFileSystem (S3_GLOBAL_URI , ImmutableMap .<String , Object > of ());
180193 assertNotNull (fileSystem );
0 commit comments