/* * Copyright (c) 2011, 2012 Roberto Tyley * * This file is part of 'Agit' - an Android Git client. * * Agit is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Agit is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see http://www.gnu.org/licenses/ . */ package com.madgag.agit; import com.github.calculon.CalculonStoryTest; import java.io.File; public class CloneLauncherActivityStoryTest extends CalculonStoryTest<CloneLauncherActivity> { private String existingFolder = File.listRoots()[0].getAbsolutePath(); public CloneLauncherActivityStoryTest() { super("com.madgag.agit", CloneLauncherActivity.class); } public void testDefaultsToUseDefaultGitDirLocation() { assertThat(R.id.UseDefaultGitDirLocation).isChecked(); } public void testCloneButtonDisabledAndWarningShownIfGitDirAlreadyExists() { setUp(R.id.UseDefaultGitDirLocation).setChecked(false).now(); assertThat(R.id.GitDirEditText).setText(existingFolder).implies(R.id.GoCloneButton).isDisabled(); assertThat(R.id.CloneReadinessMessage).isVisible(); } public void testDoesNotCrashDueToStackOverflow() { setUp(R.id.UseDefaultGitDirLocation).setChecked(false).now(); setUp(R.id.CloneUrlEditText).setText("/example/project").now(); assertThat(R.id.UseDefaultGitDirLocation).setChecked(true).implies(R.id.UseDefaultGitDirLocation).isEnabled(); } public void testDoesNotCrashDueToCloneUrlBeingJustDotGit() { setUp(R.id.UseDefaultGitDirLocation).setChecked(true).now(); setUp(R.id.CloneUrlEditText).setText(".git").now(); } // public void testCheckoutToCustomLocationWorks() { // File customLocation = tempFolder(); // setUp(R.id.CloneUrlEditText).setText("git://github.com/agittest/small-project.git").now(); // setUp(R.id.UseDefaultGitDirLocation).setChecked(false).now(); // setUp(R.id.GitDirEditText).setText(customLocation.getAbsolutePath()).now(); // // setUp(R.id.GoCloneButton).click().now(); // } }