@@ -89,12 +89,24 @@ public void testResolveRepositoryNameWithNamespace() throws Exception {
8989 assertEquals (resolved , new HostnameReposName (AuthConfig .DEFAULT_SERVER_ADDRESS , "namespace/repository" ));
9090 }
9191
92+ @ Test
93+ public void testResolveRepositoryNameWithNamespaceAndSHA256 () throws Exception {
94+ HostnameReposName resolved = NameParser .resolveRepositoryName ("namespace/repository@sha256:sha256" );
95+ assertEquals (resolved , new HostnameReposName (AuthConfig .DEFAULT_SERVER_ADDRESS , "namespace/repository@sha256:sha256" ));
96+ }
97+
9298 @ Test
9399 public void testResolveRepositoryNameWithNamespaceAndHostname () throws Exception {
94100 HostnameReposName resolved = NameParser .resolveRepositoryName ("localhost:5000/namespace/repository" );
95101 assertEquals (resolved , new HostnameReposName ("localhost:5000" , "namespace/repository" ));
96102 }
97103
104+ @ Test
105+ public void testResolveRepositoryNameWithNamespaceAndHostnameAndSHA256 () throws Exception {
106+ HostnameReposName resolved = NameParser .resolveRepositoryName ("localhost:5000/namespace/repository@sha256:sha256" );
107+ assertEquals (resolved , new HostnameReposName ("localhost:5000" , "namespace/repository" ));
108+ }
109+
98110 @ Test (expected = InvalidRepositoryNameException .class )
99111 public void testResolveRepositoryNameWithIndex () throws Exception {
100112 NameParser .resolveRepositoryName ("index.docker.io/repository" );
@@ -123,4 +135,16 @@ public void testResolveReposTagWithTag() throws Exception {
123135 resolved = NameParser .parseRepositoryTag ("localhost:5000/namespace/repository:tag" );
124136 assertEquals (resolved , new ReposTag ("localhost:5000/namespace/repository" , "tag" ));
125137 }
138+
139+ @ Test
140+ public void testResolveReposTagWithSHA256 () throws Exception {
141+ ReposTag resolved = NameParser .parseRepositoryTag ("repository@sha256:sha256" );
142+ assertEquals (resolved , new ReposTag ("repository@sha256:sha256" , "" ));
143+
144+ resolved = NameParser .parseRepositoryTag ("namespace/repository@sha256:sha256" );
145+ assertEquals (resolved , new ReposTag ("namespace/repository@sha256:sha256" , "" ));
146+
147+ resolved = NameParser .parseRepositoryTag ("localhost:5000/namespace/repository@sha256:sha256" );
148+ assertEquals (resolved , new ReposTag ("localhost:5000/namespace/repository@sha256:sha256" , "" ));
149+ }
126150}
0 commit comments