/*
* Copyright 2008-2010 Xebia and the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package fr.xebia.workshop.git;
import junit.framework.Assert;
import org.junit.Test;
public class GithubCreateRepositoryRequestTest {
@Test
public void should_build_github_url_via_default_ssh() {
//given
GithubCreateRepositoryRequest request = new GithubCreateRepositoryRequest();
request.toRepositoryName("repo");
request.onAccountName("account");
//when
String url = request.getGithubRepositoryUrl();
//then
Assert.assertEquals("git@github.com:account/repo.git", url);
}
@Test
public void should_build_github_url_via_ssh() {
//given
GithubCreateRepositoryRequest request = new GithubCreateRepositoryRequest();
request.toRepositoryName("repo");
request.onAccountName("account");
request.withAccessType(GithubCreateRepositoryRequest.AccessType.SSH);
//when
String url = request.getGithubRepositoryUrl();
//then
Assert.assertEquals("git@github.com:account/repo.git", url);
}
@Test
public void should_build_github_url_at_specific_host() {
//given
GithubCreateRepositoryRequest request = new GithubCreateRepositoryRequest();
request.toRepositoryName("repo");
request.onAccountName("account");
request.atHost("host");
//when
String url = request.getGithubRepositoryUrl();
//then
Assert.assertEquals("git@host:account/repo.git", url);
}
@Test
public void should_build_github_url_via_http() {
//given
GithubCreateRepositoryRequest request = new GithubCreateRepositoryRequest();
request.toRepositoryName("repo");
request.onAccountName("account");
request.withAccessType(GithubCreateRepositoryRequest.AccessType.HTTP);
//when
String url = request.getGithubRepositoryUrl();
//then
Assert.assertEquals("https://account@github.com/account/repo.git", url);
}
}