Package com.github.api.v2.services

Source Code of com.github.api.v2.services.RepositoryServiceTest

/*
* Copyright 2010 Nabeel Mukhtar
*
* 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 com.github.api.v2.services;

import java.util.List;
import java.util.Map;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import com.github.api.v2.schema.Key;
import com.github.api.v2.schema.Language;
import com.github.api.v2.schema.Repository;
import com.github.api.v2.schema.User;
import com.github.api.v2.services.constant.TestConstants;

/**
* The Class RepositoryServiceTest.
*/
public class RepositoryServiceTest extends BaseGitHubServiceTest {
 
  /** The service. */
  private RepositoryService service;

  /* (non-Javadoc)
   * @see com.github.api.v2.services.BaseGitHubServiceTest#setUp()
   */
  @Before
  public void setUp() throws Exception {
    super.setUp();
    service = factory.createRepositoryService();
    service.setAuthentication(authentication);
  }

  /* (non-Javadoc)
   * @see com.github.api.v2.services.BaseGitHubServiceTest#tearDown()
   */
  @After
  public void tearDown() throws Exception {
    super.tearDown();
    service = null;
  }

  /**
   * Test create repository.
   */
  @Test
  public void testCreateRepository() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository Description."), TestConstants.TEST_REPOSITORY_DESC);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository Homepage."), TestConstants.TEST_REPOSITORY_PAGE);
    service.createRepository(TestConstants.TEST_REPOSITORY_NAME, TestConstants.TEST_REPOSITORY_DESC, TestConstants.TEST_REPOSITORY_PAGE, Repository.Visibility.PUBLIC);
  }

 
  /**
   * Test add collaborator.
   */
  @Test
  public void testAddCollaborator() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    service.addCollaborator(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME, TestConstants.TEST_USER_NAME);
  }

  /**
   * Test add key.
   */
  @Test
  public void testAddKey() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Key Title."), TestConstants.TEST_KEY_TITLE);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Key."), TestConstants.TEST_KEY);
    service.addDeployKey(TestConstants.TEST_REPOSITORY_NAME, TestConstants.TEST_KEY_TITLE, TestConstants.TEST_KEY);
  }

  /**
   * Test change visibility.
   */
  @Test
  public void testChangeVisibility() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    service.changeVisibility(TestConstants.TEST_REPOSITORY_NAME, Repository.Visibility.PRIVATE);
  }

  /**
   * Test fork repository.
   */
  @Test
  public void testForkRepository() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    service.forkRepository(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
  }

  /**
   * Test get branches.
   */
  @Test
  public void testGetBranches() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
      Map<String, String> branches = service.getBranches(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
    assertFalse("Branches cannot be null or empty.", branches == null || branches.isEmpty());
  }

  /**
   * Test get collaborators.
   */
  @Test
  public void testGetCollaborators() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    List<String> collaborators = service.getCollaborators(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
    assertNotNullOrEmpty("Collaborators cannot be null or empty.", collaborators);
  }

  /**
   * Test get contributors.
   */
  @Test
  public void testGetContributors() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    List<User> contributors = service.getContributors(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
    assertNotNullOrEmpty("Contributors cannot be null or empty.", contributors);
  }

  /**
   * Test get forks.
   */
  @Test
  public void testGetForks() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    List<Repository> forks = service.getForks(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
    assertNotNullOrEmpty("Forks cannot be null or empty.", forks);
  }

  /**
   * Test get keys.
   */
  @Test
  public void testGetKeys() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    List<Key> keys = service.getDeployKeys(TestConstants.TEST_REPOSITORY_NAME);
    assertNotNullOrEmpty("Keys cannot be null or empty.", keys);
  }

  /**
   * Test get language breakdown.
   */
  @Test
  public void testGetLanguageBreakdown() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    Map<Language, Long> languageBreakdown = service.getLanguageBreakdown(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
    assertFalse("Language breakdown cannot be null or empty.", (languageBreakdown == null || languageBreakdown.isEmpty()));
  }

  /**
   * Test get pushable repositories.
   */
  @Test
  public void testGetPushableRepositories() {
    List<Repository> repositories = service.getPushableRepositories();
    assertNotNullOrEmpty("Pushable repositories cannot be null or empty.", repositories);
  }

  /**
   * Test get repositories.
   */
  @Test
  public void testGetRepositories() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
    List<Repository> repositories = service.getRepositories(TestConstants.TEST_USER_NAME);
    assertNotNullOrEmpty("Repositories cannot be null or empty.", repositories);
  }

  /**
   * Test get repository.
   */
  @Test
  public void testGetRepository() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    Repository repository = service.getRepository(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
    assertNotNull("Repository cannot be null.", repository);
  }

  /**
   * Test get tags.
   */
  @Test
  public void testGetTags() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
      Map<String, String> tags = service.getTags(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
    assertFalse("Tags cannot be null or empty.", tags == null || tags.isEmpty());
  }

  /**
   * Test get watchers.
   */
  @Test
  public void testGetWatchers() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    List<String> watchers = service.getWatchers(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
    assertNotNullOrEmpty("Watchers cannot be null or empty.", watchers);
  }

  /**
   * Test remove collaborator.
   */
  @Test
  public void testRemoveCollaborator() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    service.removeCollaborator(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME, TestConstants.TEST_USER_NAME);
  }

  /**
   * Test remove key.
   */
  @Test
  public void testRemoveKey() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Key Id."), TestConstants.TEST_KEY_ID);
    service.removeDeployKey(TestConstants.TEST_REPOSITORY_NAME, TestConstants.TEST_KEY_ID);
  }

  /**
   * Test search repositories string.
   */
  @Test
  public void testSearchRepositoriesString() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Query."), TestConstants.TEST_QUERY);
    List<Repository> repositories = service.searchRepositories(TestConstants.TEST_QUERY);
    assertNotNullOrEmpty("Repositories cannot be null or empty.", repositories);
  }

  /**
   * Test search repositories string string.
   */
  @Test
  public void testSearchRepositoriesStringString() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Query."), TestConstants.TEST_QUERY);
    List<Repository> repositories = service.searchRepositories(TestConstants.TEST_QUERY, Language.Java);
    assertNotNullOrEmpty("Repositories cannot be null or empty.", repositories);
  }

  /**
   * Test search repositories string int.
   */
  @Test
  public void testSearchRepositoriesStringInt() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Query."), TestConstants.TEST_QUERY);
    List<Repository> repositories = service.searchRepositories(TestConstants.TEST_QUERY, 1);
    assertNotNullOrEmpty("Repositories cannot be null or empty.", repositories);
  }

  /**
   * Test search repositories string string int.
   */
  @Test
  public void testSearchRepositoriesStringStringInt() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Query."), TestConstants.TEST_QUERY);
    List<Repository> repositories = service.searchRepositories(TestConstants.TEST_QUERY, Language.Java, 1);
    assertNotNullOrEmpty("Repositories cannot be null or empty.", repositories);
  }

  /**
   * Test unwatch repository.
   */
  @Test
  public void testUnwatchRepository() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    service.unwatchRepository(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
  }

  /**
   * Test update repository.
   */
  @Test
  public void testUpdateRepository() {
//    service.updateRepository(repository);
  }

  /**
   * Test watch repository.
   */
  @Test
  public void testWatchRepository() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Username."), TestConstants.TEST_USER_NAME);
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
    service.watchRepository(TestConstants.TEST_USER_NAME, TestConstants.TEST_REPOSITORY_NAME);
  }

  /**
   * Test delete repository.
   */
  @Test
  public void testDeleteRepository() {
      assertNotNullOrEmpty(String.format(RESOURCE_MISSING_MESSAGE, "Test Repository."), TestConstants.TEST_REPOSITORY_NAME);
//    service.deleteRepository(TestConstants.TEST_REPOSITORY_NAME);
  }
}
TOP

Related Classes of com.github.api.v2.services.RepositoryServiceTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.