URIishTest: more Windows file-protocol tests

Change-Id: Id5fbd8bb9cd05da89d27e9532612d64ae84a55ba
Signed-off-by: Marc Strapetz <marc.strapetz@syntevo.com>
This commit is contained in:
Marc Strapetz 2017-12-09 12:12:24 +01:00
parent c89a11213e
commit 93462447b4
1 changed files with 82 additions and 0 deletions

View File

@ -198,6 +198,10 @@ public void testFileProtoWindows() throws Exception {
URIish u = new URIish(str);
assertEquals("file", u.getScheme());
assertFalse(u.isRemote());
assertEquals(null, u.getHost());
assertEquals(-1, u.getPort());
assertEquals(null, u.getUser());
assertEquals(null, u.getPass());
assertEquals("D:/m y", u.getRawPath());
assertEquals("D:/m y", u.getPath());
assertEquals("file:///D:/m y", u.toString());
@ -205,6 +209,84 @@ public void testFileProtoWindows() throws Exception {
assertEquals(u, new URIish(str));
}
@Test
public void testFileProtoWindowsWithHost() throws Exception {
final String str = "file://localhost/D:/m y";
URIish u = new URIish(str);
assertEquals("file", u.getScheme());
assertTrue(u.isRemote());
assertEquals("localhost", u.getHost());
assertEquals(-1, u.getPort());
assertEquals(null, u.getUser());
assertEquals(null, u.getPass());
assertEquals("D:/m y", u.getRawPath());
assertEquals("D:/m y", u.getPath());
assertEquals("file://localhost/D:/m y", u.toString());
assertEquals("file://localhost/D:/m%20y", u.toASCIIString());
assertEquals(u, new URIish(str));
}
@Test
public void testFileProtoWindowsWithHostAndPort() throws Exception {
final String str = "file://localhost:80/D:/m y";
URIish u = new URIish(str);
assertEquals("file", u.getScheme());
assertTrue(u.isRemote());
assertEquals("localhost", u.getHost());
assertEquals(80, u.getPort());
assertEquals(null, u.getUser());
assertEquals(null, u.getPass());
assertEquals("D:/m y", u.getRawPath());
assertEquals("D:/m y", u.getPath());
assertEquals("file://localhost:80/D:/m y", u.toString());
assertEquals("file://localhost:80/D:/m%20y", u.toASCIIString());
assertEquals(u, new URIish(str));
}
@Test
public void testFileProtoWindowsWithHostAndEmptyPortIsAmbiguous()
throws Exception {
final String str = "file://localhost:/D:/m y";
URIish u = new URIish(str);
assertEquals("file", u.getScheme());
assertFalse(u.isRemote());
assertEquals(null, u.getHost());
assertEquals(-1, u.getPort());
assertEquals(null, u.getUser());
assertEquals(null, u.getPass());
assertEquals("localhost:/D:/m y", u.getRawPath());
assertEquals("localhost:/D:/m y", u.getPath());
assertEquals("file:///localhost:/D:/m y", u.toString());
assertEquals("file:///localhost:/D:/m%20y", u.toASCIIString());
assertEquals(u, new URIish(str));
}
@Test
public void testFileProtoWindowsMissingHostSlash() throws Exception {
final String str = "file://D:/m y";
URIish u = new URIish(str);
assertEquals("file", u.getScheme());
assertFalse(u.isRemote());
assertEquals("D:/m y", u.getRawPath());
assertEquals("D:/m y", u.getPath());
assertEquals("file:///D:/m y", u.toString());
assertEquals("file:///D:/m%20y", u.toASCIIString());
assertEquals(u, new URIish(str));
}
@Test
public void testFileProtoWindowsMissingHostSlash2() throws Exception {
final String str = "file://D: /m y";
URIish u = new URIish(str);
assertEquals("file", u.getScheme());
assertFalse(u.isRemote());
assertEquals("D: /m y", u.getRawPath());
assertEquals("D: /m y", u.getPath());
assertEquals("file:///D: /m y", u.toString());
assertEquals("file:///D:%20/m%20y", u.toASCIIString());
assertEquals(u, new URIish(str));
}
@Test
public void testGitProtoUnix() throws Exception {
final String str = "git://example.com/home/m y";