/* * Copyright (c) 2015 PocketHub * * 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.pockethub.android.tests.ref; import android.test.AndroidTestCase; import com.github.pockethub.android.core.ref.RefUtils; import com.meisolsson.githubsdk.model.git.GitReference; /** * Tests of {@link RefUtils} */ public class RefUtilsTest extends AndroidTestCase { /** * Verify {@link RefUtils#isBranch(GitReference)} */ public void testIsBranch() { assertFalse(RefUtils.isBranch(null)); assertFalse(RefUtils.isBranch(GitReference.builder().build())); assertFalse(RefUtils.isBranch(createGitReference(""))); assertFalse(RefUtils.isBranch(createGitReference("navigation_drawer_header_background"))); assertFalse(RefUtils.isBranch(createGitReference("refs/tags/v1"))); assertFalse(RefUtils.isBranch(createGitReference("refs/b1"))); assertTrue(RefUtils.isBranch(createGitReference("refs/heads/b2"))); } /** * Verify {@link RefUtils#isTag(GitReference)} */ public void testIsTag() { assertFalse(RefUtils.isTag((GitReference) null)); assertFalse(RefUtils.isTag(GitReference.builder().build())); assertFalse(RefUtils.isTag(createGitReference(""))); assertFalse(RefUtils.isTag(createGitReference("navigation_drawer_header_background"))); assertFalse(RefUtils.isTag(createGitReference("refs/b1"))); assertFalse(RefUtils.isTag(createGitReference("refs/heads/b2"))); assertTrue(RefUtils.isTag(createGitReference("refs/tags/v1"))); } /** * Verify {@link RefUtils#isValid(GitReference)} */ public void testIsValid() { assertFalse(RefUtils.isValid(null)); assertFalse(RefUtils.isValid(GitReference.builder().build())); assertFalse(RefUtils.isValid(createGitReference(""))); assertFalse(RefUtils.isValid(createGitReference("refs/pull/6/merge"))); assertFalse(RefUtils.isValid(createGitReference("refs/pull/6/head"))); assertTrue(RefUtils.isValid(createGitReference("refs/pull"))); assertTrue(RefUtils.isValid(createGitReference("refs/heads/b1"))); assertTrue(RefUtils.isValid(createGitReference("refs/tags/v1"))); } /** * Verify {@link RefUtils#getName(GitReference)} */ public void testGetName() { assertNull(RefUtils.getName((GitReference) null)); assertNull(RefUtils.getName(GitReference.builder().build())); assertEquals("", RefUtils.getName(createGitReference(""))); assertEquals("unchanged", RefUtils.getName(createGitReference("unchanged"))); assertEquals("branch", RefUtils.getName(createGitReference("refs/heads/branch"))); assertEquals("tag", RefUtils.getName(createGitReference("refs/tags/tag"))); assertEquals("notes", RefUtils.getName(createGitReference("refs/notes"))); } /** * Verify {@link RefUtils#getPath(GitReference)} */ public void testGetPath() { assertNull(RefUtils.getPath(null)); assertNull(RefUtils.getPath(GitReference.builder().build())); assertEquals("", RefUtils.getPath(createGitReference(""))); assertEquals("unchanged", RefUtils.getPath(createGitReference("unchanged"))); assertEquals("heads/branch", RefUtils.getPath(createGitReference("refs/heads/branch"))); assertEquals("tags/tag", RefUtils.getPath(createGitReference("refs/tags/tag"))); assertEquals("notes", RefUtils.getPath(createGitReference("refs/notes"))); } private GitReference createGitReference(String ref){ return GitReference.builder() .ref(ref) .build(); } }