瀏覽代碼

Merge pull request #9699 from nextcloud/bugfix/noid/unusedTestAutomationRemoval

Remove unused test automation
Álvaro Brey 3 年之前
父節點
當前提交
da9d60f2c0
共有 60 個文件被更改,包括 0 次插入4331 次删除
  1. 0 32
      automationTest/.classpath
  2. 0 5
      automationTest/.gitignore
  3. 0 23
      automationTest/.project
  4. 0 12
      automationTest/.settings/org.eclipse.jdt.core.prefs
  5. 0 4
      automationTest/.settings/org.eclipse.m2e.core.prefs
  6. 0 20
      automationTest/README.md
  7. 0 78
      automationTest/pom.xml
  8. 0 4
      automationTest/resources/.gitignore
  9. 0 244
      automationTest/src/test/java/com/owncloud/android/test/ui/actions/Actions.java
  10. 0 22
      automationTest/src/test/java/com/owncloud/android/test/ui/groups/FailingTestCategory.java
  11. 0 138
      automationTest/src/test/java/com/owncloud/android/test/ui/groups/FlexibleCategories.java
  12. 0 24
      automationTest/src/test/java/com/owncloud/android/test/ui/groups/IgnoreTestCategory.java
  13. 0 5
      automationTest/src/test/java/com/owncloud/android/test/ui/groups/InProgressCategory.java
  14. 0 25
      automationTest/src/test/java/com/owncloud/android/test/ui/groups/NoIgnoreTestCategory.java
  15. 0 23
      automationTest/src/test/java/com/owncloud/android/test/ui/groups/OtherTestCategory.java
  16. 0 141
      automationTest/src/test/java/com/owncloud/android/test/ui/groups/PatternClasspathClassesFinder.java
  17. 0 25
      automationTest/src/test/java/com/owncloud/android/test/ui/groups/SmokeTestCategory.java
  18. 0 25
      automationTest/src/test/java/com/owncloud/android/test/ui/groups/UnfinishedTestCategory.java
  19. 0 49
      automationTest/src/test/java/com/owncloud/android/test/ui/models/CertificatePopUp.java
  20. 0 94
      automationTest/src/test/java/com/owncloud/android/test/ui/models/ElementMenuOptions.java
  21. 0 61
      automationTest/src/test/java/com/owncloud/android/test/ui/models/FileDetailsView.java
  22. 0 211
      automationTest/src/test/java/com/owncloud/android/test/ui/models/FileListView.java
  23. 0 58
      automationTest/src/test/java/com/owncloud/android/test/ui/models/GmailEmailListView.java
  24. 0 50
      automationTest/src/test/java/com/owncloud/android/test/ui/models/GmailEmailView.java
  25. 0 63
      automationTest/src/test/java/com/owncloud/android/test/ui/models/GmailSendMailView.java
  26. 0 80
      automationTest/src/test/java/com/owncloud/android/test/ui/models/ImageView.java
  27. 0 115
      automationTest/src/test/java/com/owncloud/android/test/ui/models/LoginForm.java
  28. 0 47
      automationTest/src/test/java/com/owncloud/android/test/ui/models/MenuList.java
  29. 0 57
      automationTest/src/test/java/com/owncloud/android/test/ui/models/MoveView.java
  30. 0 58
      automationTest/src/test/java/com/owncloud/android/test/ui/models/NewFolderPopUp.java
  31. 0 54
      automationTest/src/test/java/com/owncloud/android/test/ui/models/NotificationView.java
  32. 0 60
      automationTest/src/test/java/com/owncloud/android/test/ui/models/PassCodeRequestView.java
  33. 0 71
      automationTest/src/test/java/com/owncloud/android/test/ui/models/PassCodeView.java
  34. 0 46
      automationTest/src/test/java/com/owncloud/android/test/ui/models/RemoveConfirmationView.java
  35. 0 101
      automationTest/src/test/java/com/owncloud/android/test/ui/models/SettingsView.java
  36. 0 48
      automationTest/src/test/java/com/owncloud/android/test/ui/models/ShareView.java
  37. 0 67
      automationTest/src/test/java/com/owncloud/android/test/ui/models/UploadFilesView.java
  38. 0 46
      automationTest/src/test/java/com/owncloud/android/test/ui/models/UploadView.java
  39. 0 44
      automationTest/src/test/java/com/owncloud/android/test/ui/models/WaitAMomentPopUp.java
  40. 0 1
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/.gitignore
  41. 0 203
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/Common.java
  42. 0 54
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/Config.java
  43. 0 94
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/CreateFolderTestSuite.java
  44. 0 87
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/DeleteFileTestSuite.java
  45. 0 92
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/DeleteFolderTestSuite.java
  46. 0 181
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/LoginTestSuite.java
  47. 0 77
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/LogoutTestSuite.java
  48. 0 120
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/MoveFileTestSuite.java
  49. 0 122
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/MoveFolderTestSuite.java
  50. 0 98
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/PasscodeTestSuite.java
  51. 0 77
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RefreshFolderTestSuite.java
  52. 0 114
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RenameFileTestSuite.java
  53. 0 112
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RenameFolderTestSuite.java
  54. 0 44
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RunFailingTests.java
  55. 0 19
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RunInProgressTest.java
  56. 0 42
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RunNoIgnoreTests.java
  57. 0 42
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RunSmokeTests.java
  58. 0 133
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/ShareLinkFileTestSuite.java
  59. 0 285
      automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/UploadTestSuite.java
  60. 0 4
      automationTest/src/test/resources/.gitignore

+ 0 - 32
automationTest/.classpath

@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="src" output="target/classes" path="src/main/java">
-		<attributes>
-			<attribute name="optional" value="true"/>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="src" path="resources"/>
-	<classpathentry kind="src" output="target/test-classes" path="src/test/java">
-		<attributes>
-			<attribute name="optional" value="true"/>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7">
-		<attributes>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
-		<attributes>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources">
-		<attributes>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="output" path="target/classes"/>
-</classpath>

+ 0 - 5
automationTest/.gitignore

@@ -1,5 +0,0 @@
-
-target/
-ScreenShots/
-.DS_Store
-Users/

+ 0 - 23
automationTest/.project

@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>androidtest</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.m2e.core.maven2Builder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.m2e.core.maven2Nature</nature>
-	</natures>
-</projectDescription>

+ 0 - 12
automationTest/.settings/org.eclipse.jdt.core.prefs

@@ -1,12 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.7
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.source=1.7

+ 0 - 4
automationTest/.settings/org.eclipse.m2e.core.prefs

@@ -1,4 +0,0 @@
-activeProfiles=
-eclipse.preferences.version=1
-resolveWorkspaceProjects=true
-version=1

+ 0 - 20
automationTest/README.md

@@ -1,20 +0,0 @@
-** Work in progress
-
-This project contains a set of automatic tests operating in the UI level.
-
-Tests are to be run with the tool Appium. Check [here][0] to install it and all its dependencies (including Maven).
-
-You will need to modify the constants in automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/Config.java to assign appropriate values for your test server and accounts.
-You will need to include the ownCloud.apk to test in automationTest/src/test/resources/.
-
-To run the tests from command line, plug a device to your computer or start and emulator. Then type 
-
-mvn clean tests
-
-To run only one category of the test
-
-mvn clean -Dtest=RunSmokeTests test
-
-The project may also be imported in Eclipse, with the appropriate plug-ins, and run from it.
-
-[0]: http://appium.io/slate/en/master/?java#about-appium

+ 0 - 78
automationTest/pom.xml

@@ -1,78 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-<modelVersion>4.0.0</modelVersion>
-
-<groupId>com.owncloud</groupId>
-<artifactId>androidtest</artifactId>
-<version>1.0-SNAPSHOT</version>
-  <build>
-    <pluginManagement>
-      <plugins>
-		<plugin>
-  			<groupId>org.apache.maven.plugins</groupId>
-  			<artifactId>maven-surefire-plugin</artifactId>
-  			<version>2.18.1</version>
-  			<configuration>
-    			<includes>
-      				<include>**/*Test**.java</include>
-    			</includes>
-  			</configuration>
-		</plugin>
-		<plugin>
-        	<groupId>org.apache.maven.plugins</groupId>
-        	<artifactId>maven-compiler-plugin</artifactId>
-        	<version>3.3</version>
-        	<configuration>
-          	<source>1.7</source>
-          	<target>1.7</target>
-        </configuration>
-      </plugin>
-      </plugins>
-    </pluginManagement>
-  </build>
-<dependencies>
-    <dependency>
-        <groupId>junit</groupId>
-        <artifactId>junit</artifactId>
-        <version>4.13.1</version>
-    </dependency>
-    <dependency>
-        <groupId>org.seleniumhq.selenium</groupId>
-        <artifactId>selenium-java</artifactId>
-        <version>2.45.0</version>
-    </dependency>
-    <dependency>
-        <groupId>io.selendroid</groupId>
-        <version>0.9.0</version>
-        <artifactId>selendroid-standalone</artifactId>
-    </dependency>
-    <dependency>
-        <groupId>io.selendroid</groupId>
-        <version>0.9.0</version>
-        <artifactId>selendroid-client</artifactId>
-    </dependency>
-    <dependency>
-        <groupId>io.appium</groupId>
-        <artifactId>java-client</artifactId>
-        <version>2.2.0</version>
-    </dependency>
-    <dependency>
-        <groupId>commons-lang</groupId>
-        <artifactId>commons-lang</artifactId>
-        <version>2.6</version>
-    </dependency>
-    <dependency>
-        <groupId>org.apache.httpcomponents</groupId>
-        <artifactId>httpclient</artifactId>
-        <version>4.5.13</version>
-    </dependency>
-    <dependency>
-    	<groupId>com.google.android</groupId>
-    	<artifactId>android</artifactId>
-    	<version>4.1.1.4</version>
-    	<scope>provided</scope>
-  </dependency>
-</dependencies>
-</project>

+ 0 - 4
automationTest/resources/.gitignore

@@ -1,4 +0,0 @@
-# Ignore everything in this directory
-*
-# Except this file
-!.gitignore

+ 0 - 244
automationTest/src/test/java/com/owncloud/android/test/ui/actions/Actions.java

@@ -1,244 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.actions;
-
-import java.util.HashMap;
-
-import org.openqa.selenium.By;
-import org.openqa.selenium.NoSuchElementException;
-import org.openqa.selenium.ScreenOrientation;
-import org.openqa.selenium.remote.RemoteWebElement;
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-import org.openqa.selenium.support.ui.WebDriverWait;
-import com.owncloud.android.test.ui.models.CertificatePopUp;
-import com.owncloud.android.test.ui.models.ElementMenuOptions;
-import com.owncloud.android.test.ui.models.GmailSendMailView;
-import com.owncloud.android.test.ui.models.ShareView;
-import com.owncloud.android.test.ui.models.UploadFilesView;
-import com.owncloud.android.test.ui.models.LoginForm;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.MenuList;
-import com.owncloud.android.test.ui.models.NewFolderPopUp;
-import com.owncloud.android.test.ui.models.RemoveConfirmationView;
-import com.owncloud.android.test.ui.models.SettingsView;
-import com.owncloud.android.test.ui.models.WaitAMomentPopUp;
-import com.owncloud.android.test.ui.testSuites.Common;
-import com.owncloud.android.test.ui.testSuites.Config;
-
-public class Actions {
-
-	public static FileListView login(String url, String user, String password,
-			Boolean isTrusted, AndroidDriver driver) 
-					throws InterruptedException {
-		LoginForm loginForm = new LoginForm(driver);
-		CertificatePopUp certificatePopUp = loginForm.typeHostUrl(url);	
-		if(!isTrusted){
-			WebDriverWait wait = new WebDriverWait(driver, 30);
-			//sometimes the certificate has been already accept 
-			//and it doesn't appear again
-			try {
-				wait.until(ExpectedConditions
-						.visibilityOf(certificatePopUp.getOkButtonElement()));
-				//we need to repaint the screen 
-				//because of some element are misplaced
-				driver.rotate(ScreenOrientation.LANDSCAPE);
-				driver.rotate(ScreenOrientation.PORTRAIT);
-				certificatePopUp.clickOnOkButton();
-			}catch (NoSuchElementException e) {
-
-			}
-
-		}
-		loginForm.typeUserName(user);
-		loginForm.typePassword(password);
-		//TODO. Assert related to check the connection?
-		return loginForm.clickOnConnectButton();
-	}
-
-	public static WaitAMomentPopUp createFolder(String folderName,
-			FileListView fileListView){
-		NewFolderPopUp newFolderPopUp = fileListView.clickOnNewFolderButton();
-		newFolderPopUp.typeNewFolderName(folderName);
-		WaitAMomentPopUp waitAMomentPopUp = newFolderPopUp
-				.clickOnNewFolderOkButton();
-		//TODO. assert here
-		return waitAMomentPopUp;
-	}
-
-
-	public static AndroidElement scrollTillFindElement (String elementName,
-			AndroidElement element, AndroidDriver driver) {
-		AndroidElement fileElement;
-
-		if(element.getAttribute("scrollable").equals("true")){
-			HashMap<String, String> scrollObject = new HashMap<String,String>();
-			scrollObject.put("text", elementName);
-			scrollObject.put("element", ( (RemoteWebElement) element).getId());
-			driver.executeScript("mobile: scrollTo", scrollObject);
-		}
-		try {
-			fileElement = (AndroidElement) driver
-					.findElementByName(elementName);
-		} catch (NoSuchElementException e) {
-			fileElement = null;
-		}
-		return fileElement;
-	}
-
-
-	public static void deleteAccount (int accountPosition,FileListView fileListView) {	
-		MenuList menulist = fileListView.clickOnMenuButton();
-		SettingsView settingView = menulist.clickOnSettingsButton();
-		deleteAccount(accountPosition,settingView);
-	}
-
-	public static void deleteAccount (int accountPosition, SettingsView settingsView) {
-		settingsView.tapOnAccountElement(accountPosition,1, 1000);
-		settingsView.clickOnDeleteAccountElement();
-	}
-
-	public static void clickOnMainLayout(AndroidDriver driver){
-		driver.tap(1, 0, 0, 1);
-	}
-
-
-	public static AndroidElement deleteElement(String elementName,  
-			FileListView fileListView, AndroidDriver driver) throws Exception{
-		AndroidElement fileElement;
-		WaitAMomentPopUp waitAMomentPopUp;
-		try{
-			//To open directly the "file list view" and
-			//we don't need to know in which view we are
-			driver.startActivity("com.owncloud.android",
-					".ui.activity.FileDisplayActivity");
-			fileElement = (AndroidElement) driver
-					.findElementByName(elementName);
-			ElementMenuOptions menuOptions = fileListView
-					.longPressOnElement(elementName);
-			RemoveConfirmationView removeConfirmationView = menuOptions
-					.clickOnRemove();;
-					waitAMomentPopUp = removeConfirmationView
-							.clickOnRemoteAndLocalButton();
-					Common.waitTillElementIsNotPresent(
-							waitAMomentPopUp.getWaitAMomentTextElement(), 100);
-		}catch(NoSuchElementException e){
-			fileElement=null;
-		}
-		return fileElement;
-	}
-
-	public static AndroidElement shareLinkElementByGmail(String elementName,  
-			FileListView fileListView, AndroidDriver driver, Common common) 
-					throws Exception{
-		try{
-			//To open directly the "file list view" and
-			//we don't need to know in which view we are
-			driver.startActivity("com.owncloud.android",
-					".ui.activity.FileDisplayActivity");
-			ElementMenuOptions menuOptions = fileListView
-					.longPressOnElement(elementName);
-			ShareView shareView = menuOptions.clickOnShareLinkElement();
-			Actions.scrollTillFindElement("Gmail", shareView
-					.getListViewLayout(), driver).click();
-			GmailSendMailView gmailSendMailView = new GmailSendMailView(driver);
-			gmailSendMailView.typeToEmailAdress(Config.gmailAccount);
-			gmailSendMailView.clickOnSendButton();
-			Common.waitTillElementIsNotPresentWithoutTimeout(fileListView
-					.getProgressCircular(), 1000);
-			common.wait.until(ExpectedConditions.visibilityOf(
-					fileListView.getFileElementLayout()
-					.findElement(By.id(FileListView
-							.getSharedElementIndicator()))));
-
-		}catch(NoSuchElementException e){
-			return null;
-		}
-		return (AndroidElement) fileListView.getFileElementLayout()
-				.findElement(By.id(FileListView.getSharedElementIndicator()));
-	}
-
-	public static AndroidElement shareLinkElementByCopyLink(String elementName,  
-			FileListView fileListView, AndroidDriver driver, Common common) 
-					throws Exception{
-		try{
-			//To open directly the "file list view" and
-			//we don't need to know in which view we are
-			driver.startActivity("com.owncloud.android",
-					".ui.activity.FileDisplayActivity");
-			ElementMenuOptions menuOptions = fileListView
-					.longPressOnElement(elementName);
-			ShareView shareView = menuOptions.clickOnShareLinkElement();
-			Actions.scrollTillFindElement("Copy link", shareView.getListViewLayout(), 
-					driver).click();
-			WaitAMomentPopUp waitAMomentPopUp = new WaitAMomentPopUp(driver);
-			Common.waitTillElementIsNotPresentWithoutTimeout(waitAMomentPopUp
-					.getWaitAMomentTextElement(), 100);
-			common.wait.until(ExpectedConditions.visibilityOf(
-					fileListView.getFileElementLayout()
-					.findElement(By.id(FileListView.getSharedElementIndicator()))));
-		}catch(NoSuchElementException e){
-			return null;
-		}
-		return (AndroidElement) fileListView.getFileElementLayout()
-				.findElement(By.id(FileListView.getSharedElementIndicator()));
-	}
-	
-	
-	public static void unshareLinkElement(String elementName,  
-			FileListView fileListView, AndroidDriver driver, Common common) 
-					throws Exception{
-		try{
-			//To open directly the "file list view" and
-			//we don't need to know in which view we are
-			driver.startActivity("com.owncloud.android",
-					".ui.activity.FileDisplayActivity");
-			ElementMenuOptions menuOptions = fileListView
-					.longPressOnElement(elementName);
-			WaitAMomentPopUp waitAMomentPopUp = menuOptions
-					.clickOnUnshareLinkElement();
-			Common.waitTillElementIsNotPresentWithoutTimeout(waitAMomentPopUp
-					.getWaitAMomentTextElement(), 100);
-			Common.waitTillElementIsNotPresent((AndroidElement) fileListView
-					.getFileElementLayout()
-					.findElement(By.id(FileListView.getSharedElementIndicator())
-					),100);
-		}catch(NoSuchElementException e){
-
-		}
-	}
-
-
-	public static FileListView uploadFile(String elementName,
-			FileListView fileListView) throws InterruptedException{
-		fileListView.clickOnUploadButton();
-		UploadFilesView uploadFilesView = fileListView
-				.clickOnFilesElementUploadFile();
-		uploadFilesView.clickOnFileName(elementName);
-		FileListView fileListViewAfterUploadFile = uploadFilesView
-				.clickOnUploadButton();
-		//TO DO. detect when the file is successfully uploaded
-		Thread.sleep(15000);
-		return fileListViewAfterUploadFile; 
-	}
-	
-}

+ 0 - 22
automationTest/src/test/java/com/owncloud/android/test/ui/groups/FailingTestCategory.java

@@ -1,22 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.groups;
-
-public interface FailingTestCategory extends IgnoreTestCategory {}

+ 0 - 138
automationTest/src/test/java/com/owncloud/android/test/ui/groups/FlexibleCategories.java

@@ -1,138 +0,0 @@
-package com.owncloud.android.test.ui.groups;
-
-import java.lang.annotation.Annotation;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-import org.junit.Test;
-import org.junit.experimental.categories.Categories.CategoryFilter;
-import org.junit.experimental.categories.Categories.ExcludeCategory;
-import org.junit.experimental.categories.Categories.IncludeCategory;
-import org.junit.experimental.categories.Category;
-import org.junit.runner.Description;
-import org.junit.runner.manipulation.NoTestsRemainException;
-import org.junit.runners.Suite;
-import org.junit.runners.model.InitializationError;
-import org.junit.runners.model.RunnerBuilder;
-
-/**
- * This class is based on org.junit.experimental.categories.Categories from JUnit 4.10.
- *
- * All anotations and inner classes from the original class Categories are removed,
- * since they will be re-used.
- * Unfortunately sub-classing Categories did not work.
- */
-public class FlexibleCategories extends Suite {
-
- /**
-  * Specifies the package which should be scanned for test classes (e.g. @TestScanPackage("my.package")).
-  * This annotation is required.
-  */
- @Retention(RetentionPolicy.RUNTIME)
- public @interface TestScanPackage {
-  public String value();
- }
-
- /**
-  * Specifies the prefix of matching class names (e.g. @TestClassPrefix("Test")).
-  * This annotation is optional (default: "").
-  */
- @Retention(RetentionPolicy.RUNTIME)
- public @interface TestClassPrefix {
-  public String value();
- }
-
- /**
-  * Specifies the suffix of matching class names (e.g. @TestClassSuffix("Test")).
-  * This annotation is optional (default: "Test").
-  */
- @Retention(RetentionPolicy.RUNTIME)
- public @interface TestClassSuffix {
-  public String value();
- }
-
- /**
-  * Specifies an annotation for methods which must be present in a matching class (e.g. @TestMethodAnnotationFilter(Test.class)).
-  * This annotation is optional (default: org.junit.Test.class).
-  */
- @Retention(RetentionPolicy.RUNTIME)
- public @interface TestMethodAnnotation {
-  public Class<? extends Annotation> value();
- }
-
- public FlexibleCategories(Class<?> clazz, RunnerBuilder builder)
-   throws InitializationError {
-  this(builder, clazz, PatternClasspathClassesFinder.getSuiteClasses(
-    getTestScanPackage(clazz), getTestClassPrefix(clazz), getTestClassSuffix(clazz),
-    getTestMethodAnnotation(clazz)));
-  try {
-   filter(new CategoryFilter(getIncludedCategory(clazz),
-     getExcludedCategory(clazz)));
-  } catch (NoTestsRemainException e) {
-   // Ignore all classes with no matching tests.
-  }
-  assertNoCategorizedDescendentsOfUncategorizeableParents(getDescription());
- }
-
- public FlexibleCategories(RunnerBuilder builder, Class<?> clazz,
-   Class<?>[] suiteClasses) throws InitializationError {
-  super(builder, clazz, suiteClasses);
- }
-
- private static String getTestScanPackage(Class<?> clazz) throws InitializationError {
-  TestScanPackage annotation = clazz.getAnnotation(TestScanPackage.class);
-  if (annotation == null) {
-   throw new InitializationError("No package given to scan for tests!\nUse the annotation @TestScanPackage(\"my.package\") on the test suite " + clazz + ".");
-  }
-  return annotation.value();
- }
-
- private static String getTestClassPrefix(Class<?> clazz) {
-  TestClassPrefix annotation = clazz.getAnnotation(TestClassPrefix.class);
-  return annotation == null ? "" : annotation.value();
- }
-
- private static String getTestClassSuffix(Class<?> clazz) {
-  TestClassSuffix annotation = clazz.getAnnotation(TestClassSuffix.class);
-  return annotation == null ? "Test" : annotation.value();
- }
-
- private static Class<? extends Annotation> getTestMethodAnnotation(Class<?> clazz) {
-  TestMethodAnnotation annotation = clazz.getAnnotation(TestMethodAnnotation.class);
-  return annotation == null ? Test.class : annotation.value();
- }
-
- private Class<?> getIncludedCategory(Class<?> clazz) {
-  IncludeCategory annotation= clazz.getAnnotation(IncludeCategory.class);
-  return annotation == null ? null : annotation.value();
- }
-
- private Class<?> getExcludedCategory(Class<?> clazz) {
-  ExcludeCategory annotation= clazz.getAnnotation(ExcludeCategory.class);
-  return annotation == null ? null : annotation.value();
- }
-
- private void assertNoCategorizedDescendentsOfUncategorizeableParents(Description description) throws InitializationError {
-  if (!canHaveCategorizedChildren(description))
-   assertNoDescendantsHaveCategoryAnnotations(description);
-  for (Description each : description.getChildren())
-   assertNoCategorizedDescendentsOfUncategorizeableParents(each);
- }
-
- private void assertNoDescendantsHaveCategoryAnnotations(Description description) throws InitializationError {
-  for (Description each : description.getChildren()) {
-   if (each.getAnnotation(Category.class) != null)
-    throw new InitializationError("Category annotations on Parameterized classes are not supported on individual methods.");
-   assertNoDescendantsHaveCategoryAnnotations(each);
-  }
- }
-
- // If children have names like [0], our current magical category code can't determine their
- // parentage.
- private static boolean canHaveCategorizedChildren(Description description) {
-  for (Description each : description.getChildren())
-   if (each.getTestClass() == null)
-    return false;
-  return true;
- }
-}

+ 0 - 24
automationTest/src/test/java/com/owncloud/android/test/ui/groups/IgnoreTestCategory.java

@@ -1,24 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.groups;
-
-public interface IgnoreTestCategory {}
-

+ 0 - 5
automationTest/src/test/java/com/owncloud/android/test/ui/groups/InProgressCategory.java

@@ -1,5 +0,0 @@
-package com.owncloud.android.test.ui.groups;
-
-public interface InProgressCategory extends IgnoreTestCategory{
-
-}

+ 0 - 25
automationTest/src/test/java/com/owncloud/android/test/ui/groups/NoIgnoreTestCategory.java

@@ -1,25 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.groups;
-
-public interface NoIgnoreTestCategory {
-
-}

+ 0 - 23
automationTest/src/test/java/com/owncloud/android/test/ui/groups/OtherTestCategory.java

@@ -1,23 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.groups;
-
-public interface OtherTestCategory extends IgnoreTestCategory {}

+ 0 - 141
automationTest/src/test/java/com/owncloud/android/test/ui/groups/PatternClasspathClassesFinder.java

@@ -1,141 +0,0 @@
-package com.owncloud.android.test.ui.groups;
-
-import java.io.File;
-import java.io.IOException;
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Method;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.List;
-
-/**
- *
- * Modified version of ClasspathClassesFinder from:
- * http://linsolas.free.fr/wordpress/index.php/2011/02/how-to-categorize-junit-tests-with-maven/
- *
- * The difference is, that it does not search for annotated classes but for classes with a certain
- * class name prefix and suffix.
- */
-public final class PatternClasspathClassesFinder {
-
- /**
-  * Get the list of classes of a given package name, and that are annotated
-  * by a given annotation.
-  *
-  * @param packageName
-  *            The package name of the classes.
-  * @param classPrefix
-  *            The prefix of the class name.
-  * @param classSuffix
-  *            The suffix of the class name.
-  * @param methodAnnotation
-  *            Only return classes containing methods annotated with methodAnnotation.
-  * @return The List of classes that matches the requirements.
-  */
- public static Class<?>[] getSuiteClasses(String packageName,
-   String classPrefix, String classSuffix,
-   Class<? extends Annotation> methodAnnotation) {
-  try {
-   return getClasses(packageName, classPrefix, classSuffix, methodAnnotation);
-  } catch (Exception e) {
-   e.printStackTrace();
-  }
-  return null;
- }
-
- /**
-  * Get the list of classes of a given package name, and that are annotated
-  * by a given annotation.
-  *
-  * @param packageName
-  *            The package name of the classes.
-  * @param classPrefix
-  *            The prefix of the class name.
-  * @param classSuffix
-  *            The suffix of the class name.
-  * @param methodAnnotation
-  *            Only return classes containing methods annotated with methodAnnotation.
-  * @return The List of classes that matches the requirements.
-  * @throws ClassNotFoundException
-  *             If something goes wrong...
-  * @throws IOException
-  *             If something goes wrong...
-  */
- private static Class<?>[] getClasses(String packageName,
-   String classPrefix, String classSuffix,
-   Class<? extends Annotation> methodAnnotation)
-   throws ClassNotFoundException, IOException {
-  ClassLoader classLoader = Thread.currentThread()
-    .getContextClassLoader();
-  String path = packageName.replace('.', '/');
-  // Get classpath
-  Enumeration<URL> resources = classLoader.getResources(path);
-  List<File> dirs = new ArrayList<File>();
-  while (resources.hasMoreElements()) {
-   URL resource = resources.nextElement();
-   dirs.add(new File(resource.getFile()));
-  }
-  // For each classpath, get the classes.
-  ArrayList<Class<?>> classes = new ArrayList<Class<?>>();
-  for (File directory : dirs) {
-   classes.addAll(findClasses(directory, packageName, classPrefix, classSuffix, methodAnnotation));
-  }
-  return classes.toArray(new Class[classes.size()]);
- }
-
- /**
-  * Find classes, in a given directory (recursively), for a given package
-  * name, that are annotated by a given annotation.
-  *
-  * @param directory
-  *            The directory where to look for.
-  * @param packageName
-  *            The package name of the classes.
-  * @param classPrefix
-  *            The prefix of the class name.
-  * @param classSuffix
-  *            The suffix of the class name.
-  * @param methodAnnotation
-  *            Only return classes containing methods annotated with methodAnnotation.
-  * @return The List of classes that matches the requirements.
-  * @throws ClassNotFoundException
-  *             If something goes wrong...
-  */
- private static List<Class<?>> findClasses(File directory,
-   String packageName, String classPrefix, String classSuffix,
-   Class<? extends Annotation> methodAnnotation)
-   throws ClassNotFoundException {
-  List<Class<?>> classes = new ArrayList<Class<?>>();
-  if (!directory.exists()) {
-   return classes;
-  }
-  File[] files = directory.listFiles();
-  for (File file : files) {
-   if (file.isDirectory()) {
-    classes.addAll(findClasses(file,
-      packageName + "." + file.getName(), classPrefix, classSuffix, methodAnnotation));
-   } else if (file.getName().startsWith(classPrefix) && file.getName().endsWith(classSuffix + ".class")) {
-    // We remove the .class at the end of the filename to get the
-    // class name...
-    Class<?> clazz = Class.forName(packageName
-      + '.'
-      + file.getName().substring(0,
-        file.getName().length() - 6));
-
-    // Check, if class contains test methods (prevent "No runnable methods" exception):
-    boolean classHasTest = false;
-    for (Method method : clazz.getMethods()) {
-     if (method.getAnnotation(methodAnnotation) != null) {
-      classHasTest = true;
-      break;
-     }
-    }
-    if (classHasTest) {
-     classes.add(clazz);
-    }
-   }
-  }
-  return classes;
- }
-}

+ 0 - 25
automationTest/src/test/java/com/owncloud/android/test/ui/groups/SmokeTestCategory.java

@@ -1,25 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.groups;
-
-public interface SmokeTestCategory {
-
-}

+ 0 - 25
automationTest/src/test/java/com/owncloud/android/test/ui/groups/UnfinishedTestCategory.java

@@ -1,25 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.groups;
-
-public interface UnfinishedTestCategory extends IgnoreTestCategory{
-
-}

+ 0 - 49
automationTest/src/test/java/com/owncloud/android/test/ui/models/CertificatePopUp.java

@@ -1,49 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.PageFactory;
-
-public class CertificatePopUp {
-	final AndroidDriver driver;	
-	
-	@AndroidFindBy(name = "OK")
-	private AndroidElement okButton;
-	
-	public CertificatePopUp (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public void clickOnOkButton () {
-		okButton.click();
-	}
-	
-	public AndroidElement getOkButtonElement () {
-		return okButton;
-	}
-
-}

+ 0 - 94
automationTest/src/test/java/com/owncloud/android/test/ui/models/ElementMenuOptions.java

@@ -1,94 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.PageFactory;
-
-public class ElementMenuOptions {
-
-	final AndroidDriver driver;
-	
-	@AndroidFindBy(name = "Share link")
-	private AndroidElement shareLinkElement;
-	
-	@AndroidFindBy(name = "Unshare link")
-	private AndroidElement unshareLinkElement;
-	
-	@AndroidFindBy(name = "Details")
-	private AndroidElement detailsFileElement;
-	
-	@AndroidFindBy(name = "Rename")
-	private AndroidElement renameFileElement;
-	
-	@AndroidFindBy(name = "Remove")
-	private AndroidElement removeFileElement;
-	
-	@AndroidFindBy(name = "Move")
-	private AndroidElement moveElement;
-	
-	public ElementMenuOptions (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public FileDetailsView clickOnDetails () {
-		detailsFileElement.click();
-		FileDetailsView fileDetailsView = new FileDetailsView(driver);
-		return fileDetailsView;
-	}
-	
-	public RemoveConfirmationView clickOnRemove () {
-		removeFileElement.click();
-		RemoveConfirmationView removeConfirmationView = 
-				new RemoveConfirmationView(driver);
-		return removeConfirmationView;
-	}
-	
-
-	public MoveView clickOnMove () {
-		moveElement.click();
-		MoveView moveView = new MoveView(driver);
-		return moveView;
-	}
-
-	public NewFolderPopUp clickOnRename () {
-		renameFileElement.click();
-		NewFolderPopUp newFolderPopUp = new NewFolderPopUp(driver);
-		return newFolderPopUp;
-	}
-	
-	public ShareView clickOnShareLinkElement () {
-		shareLinkElement.click();
-		ShareView shareView = new ShareView(driver);
-		return shareView;
-	}
-	
-	public WaitAMomentPopUp clickOnUnshareLinkElement () {
-		unshareLinkElement.click();
-		WaitAMomentPopUp waitAMomentPopUp = new WaitAMomentPopUp(driver);
-		return waitAMomentPopUp;
-	}
-}

+ 0 - 61
automationTest/src/test/java/com/owncloud/android/test/ui/models/FileDetailsView.java

@@ -1,61 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.PageFactory;
-
-public class FileDetailsView {
-	final AndroidDriver driver;
-	
-	@CacheLookup
-	@AndroidFindBy(name = "Keep file up to date")
-	private AndroidElement keepFileUpToDateCheckbox;
-	
-	@AndroidFindBy(id = "com.owncloud.android:id/fdProgressBar")
-	private AndroidElement progressBar;
-	
-	public FileDetailsView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public void checkKeepFileUpToDateCheckbox () {
-		if(keepFileUpToDateCheckbox.getAttribute("checked").equals("false")){
-			keepFileUpToDateCheckbox.click();
-		}
-	}
-	
-	public void unCheckKeepFileUpToDateCheckbox () {
-		if(keepFileUpToDateCheckbox.getAttribute("checked").equals("true")){
-			keepFileUpToDateCheckbox.click();
-		}
-	}
-	
-	public AndroidElement getProgressBar (){
-		return progressBar;
-	}
-}

+ 0 - 211
automationTest/src/test/java/com/owncloud/android/test/ui/models/FileListView.java

@@ -1,211 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import java.util.List;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.android.AndroidKeyCode;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.NoSuchElementException;
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.PageFactory;
-import org.openqa.selenium.Point;
-
-import com.owncloud.android.test.ui.actions.Actions;
-
-public class FileListView {
-	final AndroidDriver driver;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".description(\"More options\")")
-	private AndroidElement menuButton;
-	
-	@CacheLookup
-	@AndroidFindBy(id = "com.owncloud.android:id/list_root")
-	private AndroidElement filesLayout;
-	
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".resourceId(\"android:id/action_bar_title\")")
-	private AndroidElement titleText;
-	
-	@AndroidFindBy(id = "android:id/progress_circular")
-	private AndroidElement progressCircular;
-
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".description(\"New folder\")")
-	private AndroidElement newFolderButton;
-	
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector().description(\"Upload\")")
-	private AndroidElement uploadButton;
-	
-	private AndroidElement waitAMomentText;
-	
-	@AndroidFindBy(id = "com.owncloud.android:id/ListItemLayout")
-	private List<AndroidElement> listItemLayout;
-	
-	@AndroidFindBy(id = "com.owncloud.android:id/list_root")
-	private AndroidElement listRootLayout;
-	
-	@AndroidFindBy(name = "Files")
-	private AndroidElement filesElementUploadFile;
-	
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".description(\"List Layout\")")
-	private AndroidElement listLayout;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector().className(\"android.widget.FrameLayout\").index(0)")
-	private AndroidElement deviceScreen;
-	
-	private AndroidElement fileElement;
-	
-	private AndroidElement fileElementLayout;
-	
-	private static String localFileIndicator = 
-			"com.owncloud.android:id/localFileIndicator";
-	private static String favoriteFileIndicator = 
-			"com.owncloud.android:id/keptOfflineIcon";
-	private static String sharedElementIndicator = 
-			"com.owncloud.android:id/sharedIcon";
-	
-	
-	public FileListView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-
-	public MenuList clickOnMenuButton () {
-		//if the menu option is not in the actionBar, it is opening again
-		try {
-			menuButton.click();
-		} catch (NoSuchElementException e){
-			driver.sendKeyEvent(AndroidKeyCode.MENU);
-		}
-		MenuList menuList = new MenuList (driver);
-		return menuList;
-	}
-	
-	public SettingsView getSettingsView () {
-		SettingsView settingsView = new SettingsView(driver);
-		return settingsView;
-	}
-	
-	public NewFolderPopUp clickOnNewFolderButton () {
-		newFolderButton.click();
-		NewFolderPopUp newFolderPopUp = new NewFolderPopUp(driver);
-		return newFolderPopUp;
-	}
-	
-	public void clickOnUploadButton () {
-		uploadButton.click();
-	}
-	
-	public UploadFilesView clickOnFilesElementUploadFile () {
-		filesElementUploadFile.click();
-		UploadFilesView uploadFilesView = new UploadFilesView(driver);
-		return uploadFilesView;
-	}
-	
-	public AndroidElement getTitleTextElement () {
-		return titleText;
-	}
-	
-	public AndroidElement getUploadButton () {
-		return uploadButton;
-	}
-	
-	public AndroidElement getWaitAMomentTextElement () {
-		return waitAMomentText;
-	}
-	
-	public AndroidElement getListRootElement () {
-		return listRootLayout;
-	}
-	
-	public List<AndroidElement> getListItemLayout () {
-		return listItemLayout;
-	}
-	
-	public AndroidElement getFileElement () {
-		return fileElement;
-	}
-	
-	public ElementMenuOptions longPressOnElement (String elementName) {
-		scrollTillFindElement(elementName).tap(1, 1000);
-		//fileElement.tap(1, 1000);
-		ElementMenuOptions menuOptions = new ElementMenuOptions(driver);
-		return menuOptions;
-	}
-	
-	public AndroidElement scrollTillFindElement (String elementName) {
-        fileElement = Actions
-        		.scrollTillFindElement (elementName,filesLayout,driver);
-		try {
-        	fileElementLayout = (AndroidElement) driver
-        			.findElementByAndroidUIAutomator("new UiSelector()"
-        				+ ".description(\"LinearLayout-"+ elementName +"\")");
-        } catch (NoSuchElementException e) {
-        	fileElementLayout = null;
-        }
-		return fileElement;
-	}
-	
-	public AndroidElement getFileElementLayout () {
-		return fileElementLayout;
-	}
-	
-	public AndroidElement getProgressCircular () {
-		return progressCircular;
-	}
-	
-	public static String getLocalFileIndicator() {
-		return localFileIndicator;
-	}
-	
-	public static String getFavoriteFileIndicator() {
-		return favoriteFileIndicator;
-	}
-	
-	public static String getSharedElementIndicator() {
-		return sharedElementIndicator;
-	}
-	public void pulldownToRefresh () throws InterruptedException {
-		Point listLocation = listLayout.getLocation();
-		driver.swipe(listLocation.getX(),listLocation.getY(), 
-				listLocation.getX(),listLocation.getY()+1000, 5000);
-	}
-
-	
-	
-	public void pulldownToSeeNotification () throws InterruptedException {
-		Point listLocation = deviceScreen.getLocation();
-		driver.swipe(listLocation.getX(),listLocation.getY(), 
-				listLocation.getX(),listLocation.getY()+1000, 5000);
-	}
-
-}

+ 0 - 58
automationTest/src/test/java/com/owncloud/android/test/ui/models/GmailEmailListView.java

@@ -1,58 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.NoSuchElementException;
-import org.openqa.selenium.support.PageFactory;
-
-public class GmailEmailListView {
-	
-	final AndroidDriver driver;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector().description(\""
-			+ "me about UploadFile,  on May 11, conversation read\")")
-	private AndroidElement emailAmericanFormatDate;
-	@AndroidFindBy(uiAutomator = "new UiSelector().description(\""
-			+ "me about UploadFile,  on 11 May, conversation read\")")
-	private AndroidElement emailEuropeanFormatDate;
-	
-		
-	public GmailEmailListView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public GmailEmailView clickOnEmail (){
-		try{
-			emailAmericanFormatDate.click();
-		}catch (NoSuchElementException e) {
-			emailEuropeanFormatDate.click();
-		}
-		GmailEmailView gmailEmailView = new GmailEmailView(driver);
-		return gmailEmailView;
-	}
-	
-}

+ 0 - 50
automationTest/src/test/java/com/owncloud/android/test/ui/models/GmailEmailView.java

@@ -1,50 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.PageFactory;
-
-import com.owncloud.android.test.ui.testSuites.Config;
-
-public class GmailEmailView {
-	final AndroidDriver driver;
-	
-	@CacheLookup
-	@AndroidFindBy(name = Config.fileToTestSendByEmailName)
-	private AndroidElement fileButton;
-		
-	public GmailEmailView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public ImageView clickOnfileButton (){
-		fileButton.click();
-		ImageView imageView = new ImageView(driver);
-		return imageView;
-	}
-}

+ 0 - 63
automationTest/src/test/java/com/owncloud/android/test/ui/models/GmailSendMailView.java

@@ -1,63 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.PageFactory;
-
-public class GmailSendMailView {
-	final AndroidDriver driver;
-	
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector().description(\"To\")")
-	private AndroidElement toTextField;
-	
-	@CacheLookup
-	@AndroidFindBy(name = "Subject")
-	private AndroidElement subjectTextField;
-	
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector().description(\"Send\")")
-	private AndroidElement sendButton;
-	
-	public GmailSendMailView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public void typeToEmailAdress (String email) {
-		toTextField.sendKeys(email + "\n");
-	}
-
-	public void clickOnSendButton () {
-		sendButton.click();
-	}
-		
-	public void typeSubject (String subject) {
-		subjectTextField.clear();
-		subjectTextField.sendKeys(subject);
-	}
-}

+ 0 - 80
automationTest/src/test/java/com/owncloud/android/test/ui/models/ImageView.java

@@ -1,80 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.PageFactory;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.testSuites.Common;
-
-
-public class ImageView {
-	final AndroidDriver driver;
-
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".description(\"More options\")")
-	private AndroidElement optionsButton;
-
-	@AndroidFindBy(name = "Share")
-	private AndroidElement shareButton;
-
-	@AndroidFindBy(name = "ownCloud")
-	private AndroidElement ownCloudButton;
-
-	@AndroidFindBy(name = "Share with ownCloud")
-	private AndroidElement shareWithOwnCloudButton;
-
-	@AndroidFindBy(name = "Just once")
-	private AndroidElement justOnceButton;
-
-	@AndroidFindBy(id = "android:id/resolver_list")
-	private AndroidElement sharingAppsLayout;
-
-	public ImageView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-
-	public void clickOnOptionsButton(){
-		optionsButton.click();
-	}
-
-	public void clickOnShareButton(){
-		shareButton.click();
-	}
-
-	public void clickOnOwnCloudButton(){
-		if(Common.isElementPresent(ownCloudButton)){
-			Actions.scrollTillFindElement("ownCloud",sharingAppsLayout,driver);
-			ownCloudButton.click();
-		}else if(Common.isElementPresent(shareWithOwnCloudButton)){}
-	}
-
-	public void clickOnJustOnceButton(){
-		justOnceButton.click();
-	}
-}

+ 0 - 115
automationTest/src/test/java/com/owncloud/android/test/ui/models/LoginForm.java

@@ -1,115 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.PageFactory;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-public class LoginForm {
-	final AndroidDriver driver;
-	
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".description(\"Server address\")")
-	private AndroidElement hostUrlInput;
-	
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector().description(\"Username\")")
-	private AndroidElement userNameInput;
-	
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector().description(\"Password\")")
-	private AndroidElement passwordInput;
-	
-	@CacheLookup
-	@AndroidFindBy(uiAutomator = "new UiSelector().description(\"Connect\")")
-	private AndroidElement connectButton;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".description(\"Testing connection\")")
-	private AndroidElement serverStatusText;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".description(\"Wrong username or password\")")
-	private AndroidElement authStatusText;
-	
-	public LoginForm (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-
-	public CertificatePopUp typeHostUrl (String hostUrl) {
-		hostUrlInput.clear();
-		hostUrlInput.sendKeys(hostUrl + "\n");
-		CertificatePopUp certificatePopUp = new CertificatePopUp(driver);
-		return certificatePopUp;
-	}
-	
-	public void clickOnUserName () {
-		userNameInput.click();
-	}
-	
-	public void typeUserName (String userName) {
-		userNameInput.clear();
-		//using the \n , it not need to hide the keyboard
-		//which sometimes gives problems
-		userNameInput.sendKeys(userName + "\n");
-		//driver.hideKeyboard();
-	}
-	
-	public void typePassword (String password) {
-		passwordInput.clear();
-		passwordInput.sendKeys(password + "\n");
-		//driver.hideKeyboard();
-	}
-	
-	public FileListView clickOnConnectButton () {
-		connectButton.click();
-		FileListView fileListView = new FileListView(driver);
-		return fileListView;
-	}
-	
-	public AndroidElement gethostUrlInput () {
-		return hostUrlInput;
-	}
-	
-	public AndroidElement getUserNameInput () {
-		return userNameInput;
-	}
-	
-	public AndroidElement getPasswordInput () {
-		return passwordInput;
-	}
-	
-	
-	public AndroidElement getServerStatusTextElement () {
-		return serverStatusText;
-	}
-	
-	public AndroidElement getAuthStatusText () {
-		return authStatusText;
-	}
-}

+ 0 - 47
automationTest/src/test/java/com/owncloud/android/test/ui/models/MenuList.java

@@ -1,47 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import org.openqa.selenium.support.PageFactory;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-public class MenuList {
-
-	final AndroidDriver driver;
-	
-	@AndroidFindBy(name = "Settings")
-	private AndroidElement settingsButton;
-	
-	public MenuList (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public SettingsView clickOnSettingsButton () {
-		settingsButton.click();
-		SettingsView settingsView = new SettingsView(driver);
-		return settingsView;
-	}
-}

+ 0 - 57
automationTest/src/test/java/com/owncloud/android/test/ui/models/MoveView.java

@@ -1,57 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.PageFactory;
-
-import com.owncloud.android.test.ui.actions.Actions;
-
-public class MoveView {
-	final AndroidDriver driver;
-	
-	@CacheLookup
-	@AndroidFindBy(id = "com.owncloud.android:id/list_root")
-	private AndroidElement filesLayout;
-	
-	@AndroidFindBy(name = "Choose")
-	private AndroidElement chooseButton;
-	
-	public MoveView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public WaitAMomentPopUp clickOnChoose () {
-		chooseButton.click();
-		WaitAMomentPopUp waitAMomentPopUp = new WaitAMomentPopUp(driver);
-		return waitAMomentPopUp;
-	}
-	
-	public  AndroidElement scrollTillFindElement (String elementName) {
-		return Actions.scrollTillFindElement (elementName,filesLayout,driver);
-	}
-}

+ 0 - 58
automationTest/src/test/java/com/owncloud/android/test/ui/models/NewFolderPopUp.java

@@ -1,58 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import org.openqa.selenium.support.PageFactory;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-public class NewFolderPopUp {
-
-	final AndroidDriver driver;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".resourceId(\"android:id/button1\")")
-	private AndroidElement newFolderOkButton;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".resourceId(\"com.owncloud.android:id/user_input\")")
-	private AndroidElement newFolderNameField;
-	
-	public NewFolderPopUp (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-		
-	public void typeNewFolderName (String newFolderName) {
-		newFolderNameField.clear();
-		newFolderNameField.sendKeys(newFolderName + "\n");
-		//driver.hideKeyboard();
-	}
-
-	public WaitAMomentPopUp clickOnNewFolderOkButton () {
-		newFolderOkButton.click();
-		WaitAMomentPopUp waitAMomentPopUp = new WaitAMomentPopUp(driver);
-		return waitAMomentPopUp;
-	}
-}

+ 0 - 54
automationTest/src/test/java/com/owncloud/android/test/ui/models/NotificationView.java

@@ -1,54 +0,0 @@
-package com.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.PageFactory;
-
-public class NotificationView {
-final AndroidDriver driver;	
-	
-	@AndroidFindBy(name = "Upload succeeded")
-	private static AndroidElement uploadSucceededNotification;
-	
-	@AndroidFindBy(name = "Uploading ?")
-	private static AndroidElement uploadingNotification;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector().description(\"Clear all notifications.\")")
-	private AndroidElement clearAllNotificationButton;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector().className(\"android.widget.FrameLayout\").index(0)")
-	private AndroidElement notificationArea;
-
-	
-	public NotificationView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	
-	public AndroidElement getUploadSucceededNotification() {
-		return uploadSucceededNotification;
-	}
-	
-	public AndroidElement getUploadingNotification() {
-		return uploadingNotification;
-	}
-	
-	public AndroidElement getClearAllNotificationButton() {
-		return clearAllNotificationButton;
-	}
-	
-	public void tapOnClearAllNotification () {
-		clearAllNotificationButton.tap(1, 1000);
-	}
-	
-	public void tapOnBottomNotificationArea(){
-		//TODO. it is not working
-		notificationArea.getSize();
-		notificationArea.tap(1, 1000);
-	}
-
-}

+ 0 - 60
automationTest/src/test/java/com/owncloud/android/test/ui/models/PassCodeRequestView.java

@@ -1,60 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import org.openqa.selenium.support.PageFactory;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-public class PassCodeRequestView {
-final AndroidDriver driver;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".className(\"android.widget.EditText\").index(0)")
-	private AndroidElement codeElement1;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".className(\"android.widget.EditText\").index(1)")
-	private AndroidElement codeElement2;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".className(\"android.widget.EditText\").index(2)")
-	private AndroidElement codeElement3;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".className(\"android.widget.EditText\").index(3)")
-	private AndroidElement codeElement4;
-	
-	public PassCodeRequestView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public void enterPasscode(String codeNumber1, String codeNumber2, 
-			String codeNumber3, String codeNumber4){
-		codeElement1
-		   .sendKeys(codeNumber1 + codeNumber1 + codeNumber1 + codeNumber1);
-	}
-
-}

+ 0 - 71
automationTest/src/test/java/com/owncloud/android/test/ui/models/PassCodeView.java

@@ -1,71 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.PageFactory;
-
-public class PassCodeView {
-	final AndroidDriver driver;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".className(\"android.widget.EditText\").index(0)")
-	private AndroidElement codeElement1;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".className(\"android.widget.EditText\").index(1)")
-	private AndroidElement codeElement2;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".className(\"android.widget.EditText\").index(2)")
-	private AndroidElement codeElement3;
-	
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".className(\"android.widget.EditText\").index(3)")
-	private AndroidElement codeElement4;
-	
-	@AndroidFindBy(name = "Cancel")
-	private AndroidElement cancelButton;
-	
-	public PassCodeView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public PassCodeView enterPasscode(String codeNumber1, String codeNumber2, 
-			String codeNumber3, String codeNumber4){
-		codeElement1
-		  .sendKeys(codeNumber1 + codeNumber1 + codeNumber1 + codeNumber1);
-		return this;
-	}
-	public SettingsView reenterPasscode(String codeNumber1,
-			String codeNumber2, String codeNumber3, String codeNumber4){
-		codeElement1
-		   .sendKeys(codeNumber1 + codeNumber1 + codeNumber1 + codeNumber1);
-		SettingsView settingsView = new SettingsView(driver);
-		return settingsView;
-	}
-
-}

+ 0 - 46
automationTest/src/test/java/com/owncloud/android/test/ui/models/RemoveConfirmationView.java

@@ -1,46 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.PageFactory;
-
-public class RemoveConfirmationView {
-	final AndroidDriver driver;
-	
-	@AndroidFindBy(name = "Remote and local")
-	private AndroidElement remoteAndLocalButton;
-	
-	public RemoveConfirmationView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public WaitAMomentPopUp clickOnRemoteAndLocalButton () {
-		remoteAndLocalButton.click();
-		WaitAMomentPopUp waitAMomentPopUp = new WaitAMomentPopUp(driver);
-		return waitAMomentPopUp;
-	}
-}

+ 0 - 101
automationTest/src/test/java/com/owncloud/android/test/ui/models/SettingsView.java

@@ -1,101 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.PageFactory;
-
-import com.owncloud.android.test.ui.testSuites.Config;
-
-public class SettingsView {
-	final AndroidDriver driver;
-
-	@CacheLookup
-	@AndroidFindBy(name = Config.userAccount)
-	private AndroidElement accountElement;
-
-	@CacheLookup
-	@AndroidFindBy(name = Config.userAccount2)
-	private AndroidElement accountElement2;
-
-	@AndroidFindBy(name = "Delete account")
-	private AndroidElement deleteAccountElement;
-
-	@AndroidFindBy(name = "Change password")
-	private AndroidElement changePasswordElement;
-
-	@AndroidFindBy(name = "Add account")
-	private AndroidElement addAccountElement;
-
-	@AndroidFindBy(uiAutomator = "new UiSelector()"
-			+ ".className(\"android.widget.CheckBox\").index(0)")
-	private AndroidElement passcodeCheckbox;
-
-	public SettingsView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-
-	public void tapOnAccountElement (int accountPosition, int fingers, int milliSeconds) {
-		if(accountPosition==1)
-			accountElement.tap(fingers, milliSeconds);
-		else
-			accountElement2.tap(fingers, milliSeconds);
-	}
-
-	public void tapOnAddAccount (int fingers, int milliSeconds) {
-		addAccountElement.tap(fingers, milliSeconds);
-	}
-
-	public LoginForm clickOnDeleteAccountElement () {
-		deleteAccountElement.click();
-		LoginForm loginForm = new LoginForm(driver);
-		return loginForm;
-	}
-
-	public LoginForm clickOnChangePasswordElement () {
-		changePasswordElement.click();
-		LoginForm loginForm = new LoginForm(driver);
-		return loginForm;
-	}
-
-	public PassCodeView EnablePassCode(){
-		if(!passcodeCheckbox.isSelected()){
-			passcodeCheckbox.click();
-		}
-		PassCodeView passcodeview = new PassCodeView(driver);
-		return passcodeview;
-	}
-
-	public PassCodeView DisablePassCode(){
-		if(passcodeCheckbox.isSelected()){
-			passcodeCheckbox.click();
-		}
-		PassCodeView passcodeview = new PassCodeView(driver);
-		return passcodeview;
-	}
-
-}

+ 0 - 48
automationTest/src/test/java/com/owncloud/android/test/ui/models/ShareView.java

@@ -1,48 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.FindBy;
-import org.openqa.selenium.support.PageFactory;
-
-public class ShareView {
-	final AndroidDriver driver;
-	
-	@CacheLookup
-	@FindBy(id = "android:id/select_dialog_listview")
-	private AndroidElement listViewLayout;
-	
-	public ShareView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public AndroidElement getListViewLayout () {
-		return listViewLayout;
-	}
-	
-	
-}

+ 0 - 67
automationTest/src/test/java/com/owncloud/android/test/ui/models/UploadFilesView.java

@@ -1,67 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.PageFactory;
-
-import com.owncloud.android.test.ui.actions.Actions;
-
-public class UploadFilesView{
-	final AndroidDriver driver;
-	
-	@CacheLookup
-	@AndroidFindBy(id = "com.owncloud.android:id/list_root")
-	private AndroidElement filesLayout;
-	
-	@CacheLookup
-	@AndroidFindBy(id = "com.owncloud.android:id/upload_files_btn_upload")
-	private AndroidElement uploadButton;
-	
-	private AndroidElement fileElement;
-	
-	public UploadFilesView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public FileListView clickOnUploadButton () {
-		uploadButton.click();
-		FileListView fileListView = new FileListView (driver);
-		return fileListView;
-	}
-	
-	//change to scrollTillFindElement
-	public void scrollTillFindFile (String fileName) {
-		fileElement = Actions
-				.scrollTillFindElement(fileName,filesLayout,driver);
-	}
-	
-	public void clickOnFileName (String fileName) {
-		scrollTillFindFile(fileName);
-		fileElement.click();
-	}
-}

+ 0 - 46
automationTest/src/test/java/com/owncloud/android/test/ui/models/UploadView.java

@@ -1,46 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-import org.openqa.selenium.support.CacheLookup;
-import org.openqa.selenium.support.PageFactory;
-
-public class UploadView {
-	final AndroidDriver driver;
-	
-	@CacheLookup
-	@AndroidFindBy(name = "Upload")
-	private AndroidElement uploadButton;
-		
-	public UploadView (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public void clickOUploadButton () {
-		uploadButton.click();
-	}
-}

+ 0 - 44
automationTest/src/test/java/com/owncloud/android/test/ui/models/WaitAMomentPopUp.java

@@ -1,44 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.models;
-
-import org.openqa.selenium.support.PageFactory;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-import io.appium.java_client.pagefactory.AndroidFindBy;
-import io.appium.java_client.pagefactory.AppiumFieldDecorator;
-
-public class WaitAMomentPopUp {
-	final AndroidDriver driver;
-	
-	@AndroidFindBy(name = "Wait a moment")
-	private AndroidElement waitAMomentText;
-	
-	public WaitAMomentPopUp (AndroidDriver driver) {
-		this.driver = driver;
-		PageFactory.initElements(new AppiumFieldDecorator(driver), this);
-	}
-	
-	public AndroidElement getWaitAMomentTextElement () {
-		return waitAMomentText;
-	}
-}

+ 0 - 1
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/.gitignore

@@ -1 +0,0 @@
-Config.java

+ 0 - 203
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/Common.java

@@ -1,203 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.concurrent.TimeUnit;
-
-import org.apache.commons.io.FileUtils;
-import org.openqa.selenium.By;
-import org.openqa.selenium.NoSuchElementException;
-import org.openqa.selenium.OutputType;
-import org.openqa.selenium.TimeoutException;
-import org.openqa.selenium.remote.DesiredCapabilities;
-import org.openqa.selenium.remote.RemoteWebDriver;
-import org.openqa.selenium.support.ui.WebDriverWait;
-
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-
-public class Common{
-	AndroidDriver driver;
-	static int waitingTime = 30;
-
-	public WebDriverWait wait;
-
-	protected AndroidDriver setUpCommonDriver () throws Exception {
-		File rootPath = new File(System.getProperty("user.dir"));
-		File appDir = new File(rootPath,"src/test/resources");
-		File app = new File(appDir,"ownCloud.apk");
-		DesiredCapabilities capabilities = new DesiredCapabilities();
-		capabilities.setCapability("platformName", "Android");
-		capabilities.setCapability("deviceName", "test");
-		capabilities.setCapability("app", app.getAbsolutePath());
-		capabilities.setCapability("appPackage", "com.owncloud.android");
-		capabilities.setCapability("appActivity", 
-				".ui.activity.FileDisplayActivity");	
-		capabilities.setCapability("appWaitActivity", 
-				".authentication.AuthenticatorActivity");
-		driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),
-				capabilities);
-		driver.manage().timeouts().implicitlyWait(waitingTime,
-				TimeUnit.SECONDS);
-		wait = new WebDriverWait(driver, waitingTime, 50);
-		return driver;
-
-	}
-
-	protected boolean waitForTextPresent(String text, AndroidElement element)
-			throws InterruptedException{
-		for (int second = 0;;second++){	
-			if (second >= waitingTime)
-				return false;
-			try{
-				if (text.equals(element.getText()))
-					break;
-			} catch (Exception e){
-
-			}
-			Thread.sleep(1000);
-		}
-		return true;
-	}
-
-	protected boolean isElementPresent(AndroidElement element, By by) {
-		try {
-			element.findElement(by);
-			return true;
-		} catch (NoSuchElementException e) {
-			return false;
-		}
-	}
-
-	public static boolean isElementPresent(AndroidElement element) {
-		try{
-			element.isDisplayed();
-		} catch (NoSuchElementException e){
-			return false;
-		}
-		return true;
-	}
-
-	//pollingTime in milliseconds
-	public static void waitTillElementIsNotPresent (AndroidElement element,
-			int pollingTime) throws Exception {
-		for (int time = 0;time <= waitingTime * 1000;time += pollingTime){	
-			try{
-				element.isDisplayed();
-			} catch (NoSuchElementException e){
-				return;
-			}
-			Thread.sleep(pollingTime);
-		}
-		throw new TimeoutException();
-	}
-
-	public static void waitTillElementIsNotPresentWithoutTimeout (
-			AndroidElement element,int pollingTime) 
-					throws InterruptedException {
-		for (int time = 0;time <= waitingTime * 1000;time += pollingTime){	
-			try{
-				element.isDisplayed();
-			} catch (NoSuchElementException e){
-				return;
-			}
-			Thread.sleep(pollingTime);
-		}
-	}
-	
-	public static void waitTillElementIsPresent (
-			AndroidElement element,int pollingTime) 
-					throws InterruptedException {
-		for (int time = 0;time <= waitingTime * 1000;time += pollingTime){	
-			try{
-				if(element.isDisplayed()){
-					return;
-				}
-			} catch (NoSuchElementException e){
-				
-			}
-			Thread.sleep(pollingTime);
-		}
-	}
-	
-	protected void takeScreenShotOnFailed (String testName) 
-			throws IOException {
-		File file  = ((RemoteWebDriver) driver)
-				.getScreenshotAs(OutputType.FILE);
-		SimpleDateFormat dt1 = new SimpleDateFormat("yyyy-MM-dd");
-		Date today = Calendar.getInstance().getTime(); 
-		String screenShotName = "ScreenShots/" + dt1.format(today) + "/"
-				+ testName + ".png";
-		FileUtils.copyFile(file, new File(screenShotName));
-	}
-
-	protected void assertIsInFileListView() throws InterruptedException {
-		//waitForTextPresent("Wrong username or password", 
-			//	changePasswordForm.getAuthStatusText());
-		Thread.sleep(2000);
-		assertTrue(waitForTextPresent("ownCloud", (AndroidElement) driver
-				.findElementByAndroidUIAutomator("new UiSelector()"
-						+ ".resourceId(\"android:id/action_bar_title\")")));
-		assertTrue(isElementPresent((AndroidElement) driver
-				.findElementByAndroidUIAutomator("new UiSelector()"
-						+ ".description(\"Upload\")")));	
-	}
-
-	protected void assertIsNotInFileListView() throws InterruptedException {
-		AndroidElement fileElement;
-		assertTrue(waitForTextPresent("ownCloud", (AndroidElement) driver
-				.findElementByAndroidUIAutomator("new UiSelector()"
-						+ ".resourceId(\"android:id/action_bar_title\")")));
-		try {
-			fileElement = (AndroidElement) driver
-					.findElementByAndroidUIAutomator("new UiSelector()"
-							+ ".description(\"Upload\")");
-		} catch (NoSuchElementException e) {
-			fileElement = null;
-		}
-		assertNull(fileElement);
-	}
-
-	protected void assertIsPasscodeRequestView() throws InterruptedException {
-		assertTrue(waitForTextPresent("ownCloud", (AndroidElement) driver
-				.findElementByAndroidUIAutomator("new UiSelector()"
-						+ ".resourceId(\"android:id/action_bar_title\")")));
-		assertTrue(((AndroidElement) driver.findElementByAndroidUIAutomator(
-				"new UiSelector().text(\"Please, insert your pass code\")"))
-				.isDisplayed());
-
-	}
-
-	protected void assertIsInSettingsView() throws InterruptedException {
-		assertTrue(waitForTextPresent("Settings", (AndroidElement) driver
-				.findElementByAndroidUIAutomator("new UiSelector()"
-						+ ".resourceId(\"android:id/action_bar_title\")")));
-	}
-
-}

+ 0 - 54
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/Config.java

@@ -1,54 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-public final class Config {
-
-	//without http or https
-	public static final String URL = "owncloudServerVar";
-	public static boolean isTrusted = true;
-
-	//without http or https
-	public static final String URL2 = "owncloudServer2Var";
-	public static boolean isTrusted2 = true;
-
-	public static final String user = "owncloudUserVar";
-	public static final String password = "owncloudPasswordVar";
-	public static final String user2 = "owncloudUser2Var";
-	public static final String password2 = "owncloudPassword2Var";
-	public static final String userAccount = user + "@"+ URL;
-	public static final String userAccount2 = user2 + "@"+ URL2;
-
-	public static final String gmailAccount = "gmailAccountVar";
-	
-	public static final String fileWhichIsInTheServer1 ="test";
-	public static final String fileWhichIsInTheServer2 ="test";
-	
-	public static final String fileToTestName = "test";
-	public static final String fileToTestSendByEmailName = "test";
-	public static final String bigFileToTestName = "test";
-	
-	public static final String passcode1 = "passcode1";
-	public static final String passcode2 = "passcode2";
-	public static final String passcode3 = "passcode3";
-	public static final String passcode4 = "passcode4";
-
-}

+ 0 - 94
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/CreateFolderTestSuite.java

@@ -1,94 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.WaitAMomentPopUp;
-
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class CreateFolderTestSuite{
-	
-	AndroidDriver driver;
-	Common common;
-	private Boolean folderHasBeenCreated = false;
-	private final String FOLDER_NAME = "testCreateFolder";
-	private String CurrentCreatedFolder = "";
-	
-	@Rule public TestName name = new TestName();
-
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testCreateNewFolder () throws Exception {
-		String NEW_FOLDER_NAME = "testCreateFolder";
-
-		FileListView fileListView = Actions.login(Config.URL, 
-				Config.user,Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-
-		//check if the folder already exists and if true, delete them
-		Actions.deleteElement(NEW_FOLDER_NAME, fileListView, driver);
-
-		WaitAMomentPopUp waitAMomentPopUp = Actions
-				.createFolder(NEW_FOLDER_NAME, fileListView);
-		Common.waitTillElementIsNotPresentWithoutTimeout(waitAMomentPopUp
-				.getWaitAMomentTextElement(), 100);
-		fileListView.scrollTillFindElement(FOLDER_NAME);
-		assertNotNull(fileListView.getFileElement());
-		assertTrue(
-			folderHasBeenCreated=fileListView.getFileElement().isDisplayed());	
-		CurrentCreatedFolder = FOLDER_NAME;
-		assertEquals(FOLDER_NAME , fileListView.getFileElement().getText());
-	}
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		if (folderHasBeenCreated) {
-			FileListView fileListView = new FileListView(driver);
-			Actions.deleteElement(CurrentCreatedFolder, fileListView, driver);
-		}
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-
-}

+ 0 - 87
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/DeleteFileTestSuite.java

@@ -1,87 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-import org.openqa.selenium.By;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.models.FileListView;
-
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class DeleteFileTestSuite{
-	
-	AndroidDriver driver;
-	Common common;
-	private final String FILE_NAME = Config.fileToTestName;
-	
-	@Rule public TestName name = new TestName();
-	
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testDeleteFile () throws Exception {		
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		
-		//TODO. if the file already exists, do not upload
-		FileListView fileListViewAfterUploadFile = Actions
-				.uploadFile(FILE_NAME, fileListView);
-		
-		fileListViewAfterUploadFile.scrollTillFindElement(FILE_NAME);
-		Common.waitTillElementIsNotPresentWithoutTimeout(
-				fileListViewAfterUploadFile.getProgressCircular(), 1000);
-		common.wait.until(ExpectedConditions.visibilityOf(
-				fileListViewAfterUploadFile.getFileElementLayout()
-				.findElement(By.id(FileListView.getLocalFileIndicator()))));
-		
-		Actions.deleteElement(FILE_NAME,fileListViewAfterUploadFile, driver);
-		assertFalse(fileListViewAfterUploadFile.getFileElement().isDisplayed());
-	}
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-
-}

+ 0 - 92
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/DeleteFolderTestSuite.java

@@ -1,92 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.WaitAMomentPopUp;
-
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class DeleteFolderTestSuite{
-	AndroidDriver driver;
-	Common common;
-	private Boolean folderHasBeenCreated = false;
-	private final String FOLDER_NAME = "testCreateFolder";
-	
-	@Rule public TestName name = new TestName();
-
-
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testDeleteFolder () throws Exception {
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		
-		//TODO. if the folder already exists, do no created
-		//create the folder
-		WaitAMomentPopUp waitAMomentPopUp = Actions
-				.createFolder(FOLDER_NAME, fileListView);
-		Common.waitTillElementIsNotPresentWithoutTimeout(
-				waitAMomentPopUp.getWaitAMomentTextElement(), 100);
-		fileListView.scrollTillFindElement(FOLDER_NAME);
-		assertTrue(
-			folderHasBeenCreated = fileListView.getFileElement().isDisplayed());
-
-		//delete the folder
-		Actions.deleteElement(FOLDER_NAME, fileListView, driver);
-		assertFalse(
-			folderHasBeenCreated =fileListView.getFileElement().isDisplayed());
-	}
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		if(folderHasBeenCreated){
-			FileListView fileListView = new FileListView(driver);
-			Actions.deleteElement(FOLDER_NAME, fileListView, driver);
-		}
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-
-}

+ 0 - 181
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/LoginTestSuite.java

@@ -1,181 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-import org.openqa.selenium.ScreenOrientation;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.*;
-import com.owncloud.android.test.ui.models.LoginForm;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.MenuList;
-import com.owncloud.android.test.ui.models.SettingsView;
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class LoginTestSuite{
-	AndroidDriver driver;
-	Common common;
-	
-	@Rule public TestName name = new TestName();
-	
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-	
-	@Test
-	@Category({NoIgnoreTestCategory.class})
-	public void test1LoginPortrait () throws Exception {
-		driver.rotate(ScreenOrientation.PORTRAIT);
-		
-		Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-	}
-	
-	@Test
-	@Category({NoIgnoreTestCategory.class})
-	public void test2LoginLandscape () throws Exception {
-		driver.rotate(ScreenOrientation.LANDSCAPE);
-		Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-	}
-	
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testLoginAndShowFiles () throws Exception {
-		driver.rotate(ScreenOrientation.PORTRAIT);
-		
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		
-		fileListView.scrollTillFindElement(Config.fileWhichIsInTheServer1);
-		assertTrue(fileListView.getFileElement().isDisplayed());
-	}
-	
-	
-	
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void test3MultiAccountRotate () throws Exception {
-		driver.rotate(ScreenOrientation.LANDSCAPE);
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		
-		driver.rotate(ScreenOrientation.PORTRAIT);
-		MenuList menu = fileListView.clickOnMenuButton();
-		SettingsView settingsView = menu.clickOnSettingsButton();
-		
-		settingsView.tapOnAddAccount(1, 1000);
-		fileListView = Actions.login(Config.URL2, Config.user2,
-				Config.password2, Config.isTrusted2, driver);
-		common.assertIsInSettingsView();
-	}
-	
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testMultiAccountAndShowFiles () throws Exception {
-		driver.rotate(ScreenOrientation.LANDSCAPE);
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		fileListView.scrollTillFindElement(Config.fileWhichIsInTheServer1);
-		assertTrue(fileListView.getFileElement().isDisplayed());
-		
-		driver.rotate(ScreenOrientation.PORTRAIT);
-		MenuList menu = fileListView.clickOnMenuButton();
-		SettingsView settingsView = menu.clickOnSettingsButton();
-		
-		settingsView.tapOnAddAccount(1, 1000);
-		fileListView = Actions.login(Config.URL2, Config.user2,
-				Config.password2, Config.isTrusted2, driver);
-		common.assertIsInSettingsView();
-		settingsView.tapOnAccountElement(2,1, 100);
-		common.assertIsInFileListView();
-		
-		fileListView.scrollTillFindElement(Config.fileWhichIsInTheServer2);
-		assertTrue(fileListView.getFileElement().isDisplayed());
-	}
-	
-	@Test
-	@Category({NoIgnoreTestCategory.class})
-	public void test4ExistingAccountRotate () throws Exception {
-		driver.rotate(ScreenOrientation.PORTRAIT);
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		
-		driver.rotate(ScreenOrientation.LANDSCAPE);
-		MenuList menu = fileListView.clickOnMenuButton();
-		SettingsView settingsView = menu.clickOnSettingsButton();
-		settingsView.tapOnAddAccount(1, 1000);
-		
-		LoginForm loginForm = new LoginForm(driver);
-		fileListView = Actions.login(Config.URL, Config.user,Config.password, 
-				Config.isTrusted, driver);	
-		assertTrue(common.waitForTextPresent("An account for the same user and"
-				+ " server already exists in the device", 
-				loginForm.getAuthStatusText()));
-	}
-	
-	@Test
-	@Category({NoIgnoreTestCategory.class})
-	public void test5ChangePasswordWrong () throws Exception {
-		driver.rotate(ScreenOrientation.PORTRAIT);
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		MenuList menu = fileListView.clickOnMenuButton();
-		SettingsView settingsView = menu.clickOnSettingsButton();
-		settingsView.tapOnAccountElement(1,1, 1000);
-		LoginForm changePasswordForm = settingsView
-				.clickOnChangePasswordElement();
-		changePasswordForm.typePassword("WrongPassword");
-		changePasswordForm.clickOnConnectButton();
-		assertTrue(common.waitForTextPresent("Wrong username or password", 
-				changePasswordForm.getAuthStatusText()));
-	}
-	
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-	
-	
-}

+ 0 - 77
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/LogoutTestSuite.java

@@ -1,77 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.models.LoginForm;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.MenuList;
-import com.owncloud.android.test.ui.models.SettingsView;
-
-public class LogoutTestSuite{
-	
-	AndroidDriver driver;
-	Common common;
-
-	@Rule public TestName name = new TestName();
-	
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testLogout () throws Exception {
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		MenuList menulist = fileListView.clickOnMenuButton();
-		SettingsView settingsView = menulist.clickOnSettingsButton();
-		settingsView.tapOnAccountElement(1,1, 1000);
-		LoginForm loginForm = settingsView.clickOnDeleteAccountElement();
-		assertEquals("Server address https://…",
-				loginForm.gethostUrlInput().getText());
-		assertEquals("Username", loginForm.getUserNameInput().getText());
-		assertEquals("", loginForm.getPasswordInput().getText());
-	}
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		//driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-}

+ 0 - 120
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/MoveFileTestSuite.java

@@ -1,120 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.FixMethodOrder;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.models.ElementMenuOptions;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.MoveView;
-import com.owncloud.android.test.ui.models.WaitAMomentPopUp;
-
-
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class MoveFileTestSuite{
-	AndroidDriver driver;
-	Common common;
-	private String FOLDER_WHERE_MOVE = "folderWhereMove";
-	private String FILE_NAME = Config.fileToTestName;
-	@Rule public TestName name = new TestName();
-	
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testMoveFile () throws Exception {
-		WaitAMomentPopUp waitAMomentPopUp;
-
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-
-		//Common.waitTillElementIsNotPresentWithoutTimeout(
-		     //fileListView.getProgressCircular(), 1000);
-
-		//check if the folder already exists and if true, delete them
-		Actions.deleteElement(FOLDER_WHERE_MOVE, fileListView, driver);
-		Actions.deleteElement(FILE_NAME, fileListView, driver);
-
-		//Create the folder where the other is gone to be moved
-		waitAMomentPopUp = Actions
-				.createFolder(FOLDER_WHERE_MOVE, fileListView);
-		Common.waitTillElementIsNotPresentWithoutTimeout(
-				waitAMomentPopUp.getWaitAMomentTextElement(), 100);
-		fileListView.scrollTillFindElement(FOLDER_WHERE_MOVE);
-		assertTrue(fileListView.getFileElement().isDisplayed());
-
-		FileListView fileListViewAfterUploadFile = Actions
-				.uploadFile(FILE_NAME, fileListView);
-		fileListViewAfterUploadFile.scrollTillFindElement(FILE_NAME);
-		assertTrue(fileListViewAfterUploadFile.getFileElement().isDisplayed());
-
-		//select to move the file
-		ElementMenuOptions menuOptions = fileListView
-				.longPressOnElement(FILE_NAME);
-		MoveView moveView = menuOptions.clickOnMove();
-
-		//to move to a folder
-		moveView.scrollTillFindElement(FOLDER_WHERE_MOVE).tap(1,1);
-		waitAMomentPopUp = moveView.clickOnChoose();
-		Common.waitTillElementIsNotPresentWithoutTimeout(
-				waitAMomentPopUp.getWaitAMomentTextElement(), 100);
-
-		//check that the folder moved is inside the other
-		fileListView.scrollTillFindElement(FOLDER_WHERE_MOVE).tap(1,1);
-		Common.waitTillElementIsNotPresentWithoutTimeout(fileListView.getProgressCircular(),
-				1000);
-		Thread.sleep(1000);
-		fileListView.scrollTillFindElement(FILE_NAME);
-		assertEquals(FILE_NAME , fileListView.getFileElement().getText());
-
-	}
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		FileListView fileListView = new FileListView(driver);
-		driver.sendKeyEvent(android.view.KeyEvent.KEYCODE_BACK);
-		Actions.deleteElement(FOLDER_WHERE_MOVE, fileListView, driver);
-		Actions.deleteElement(FILE_NAME, fileListView, driver);
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-
-}

+ 0 - 122
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/MoveFolderTestSuite.java

@@ -1,122 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.models.ElementMenuOptions;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.MoveView;
-import com.owncloud.android.test.ui.models.WaitAMomentPopUp;
-
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class MoveFolderTestSuite{
-	AndroidDriver driver;
-	Common common;
-	private String FOLDER_TO_MOVE = "folderToMove";
-	private String FOLDER_WHERE_MOVE = "folderWhereMove";
-	
-	@Rule public TestName name = new TestName();
-
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testMoveFolder () throws Exception {
-		WaitAMomentPopUp waitAMomentPopUp;
-
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-
-		//Common.waitTillElementIsNotPresentWithoutTimeout(
-		     //fileListView.getProgressCircular(), 1000);
-
-		//check if the folder already exists and if true, delete them
-		Actions.deleteElement(FOLDER_WHERE_MOVE, fileListView, driver);
-		Actions.deleteElement(FOLDER_TO_MOVE, fileListView, driver);
-
-		//Create the folder where the other is gone to be moved
-		waitAMomentPopUp = Actions
-				.createFolder(FOLDER_WHERE_MOVE, fileListView);
-		Common.waitTillElementIsNotPresentWithoutTimeout(
-				waitAMomentPopUp.getWaitAMomentTextElement(), 100);
-		fileListView.scrollTillFindElement(FOLDER_WHERE_MOVE);
-		assertTrue(fileListView.getFileElement().isDisplayed());
-
-		//Create the folder which is going to be moved
-		waitAMomentPopUp = Actions.createFolder(FOLDER_TO_MOVE, fileListView);
-		Common.waitTillElementIsNotPresent(
-				waitAMomentPopUp.getWaitAMomentTextElement(), 100);
-		fileListView.scrollTillFindElement(FOLDER_TO_MOVE);
-		assertTrue(fileListView.getFileElement().isDisplayed());
-
-		//select to move the folder
-		ElementMenuOptions menuOptions = fileListView
-				.longPressOnElement(FOLDER_TO_MOVE);
-		MoveView moveView = menuOptions.clickOnMove();
-
-		//to move to a folder
-		moveView.scrollTillFindElement(FOLDER_WHERE_MOVE).tap(1,1);
-		waitAMomentPopUp = moveView.clickOnChoose();
-		Common.waitTillElementIsNotPresentWithoutTimeout(waitAMomentPopUp
-				.getWaitAMomentTextElement(), 100);
-		
-		//check that the folder moved is inside the other
-		fileListView.scrollTillFindElement(FOLDER_WHERE_MOVE).tap(1,1);
-		Common.waitTillElementIsNotPresentWithoutTimeout(fileListView.getProgressCircular(),
-				1000);
-		Thread.sleep(1000);
-		fileListView.scrollTillFindElement(FOLDER_TO_MOVE);
-		assertEquals(FOLDER_TO_MOVE , fileListView.getFileElement().getText());
-	}
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		FileListView fileListView = new FileListView(driver);
-		driver.sendKeyEvent(android.view.KeyEvent.KEYCODE_BACK);
-		Actions.deleteElement(FOLDER_WHERE_MOVE, fileListView, driver);
-		Actions.deleteElement(FOLDER_TO_MOVE, fileListView, driver);
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-
-
-}

+ 0 - 98
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/PasscodeTestSuite.java

@@ -1,98 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.FixMethodOrder;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-import org.openqa.selenium.ScreenOrientation;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.MenuList;
-import com.owncloud.android.test.ui.models.PassCodeRequestView;
-import com.owncloud.android.test.ui.models.PassCodeView;
-import com.owncloud.android.test.ui.models.SettingsView;
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class PasscodeTestSuite {
-	AndroidDriver driver;
-	Common common;
-	
-	@Rule public TestName name = new TestName();
-	
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-	
-	@Test
-	@Category({NoIgnoreTestCategory.class})
-	public void testPincodeEnable () throws Exception {
-		driver.rotate(ScreenOrientation.PORTRAIT);
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		
-		MenuList menu = fileListView.clickOnMenuButton();
-		SettingsView settingsView = menu.clickOnSettingsButton();
-		
-		PassCodeView passCodeview = settingsView.EnablePassCode();
-		PassCodeView passCodeview2 = passCodeview.enterPasscode(
-				Config.passcode1, Config.passcode2, Config.passcode3, 
-				Config.passcode4);
-		passCodeview2.reenterPasscode(Config.passcode1, Config.passcode2, 
-				Config.passcode3, Config.passcode4);
-		
-		driver.sendKeyEvent(android.view.KeyEvent.KEYCODE_HOME);
-		//TO DO. Open the app instead of start an activity
-		driver.startActivity("com.owncloud.android", 
-				".ui.activity.FileDisplayActivity");
-		//here we check that we are not in the fileDisplayActivity,
-		//because pincode is asked
-		common.assertIsNotInFileListView();
-		common.assertIsPasscodeRequestView();
-		
-		PassCodeRequestView passCodeReequestView = new 
-				PassCodeRequestView(driver);
-		passCodeReequestView.enterPasscode(Config.passcode1, Config.passcode2,
-				Config.passcode3, Config.passcode4);
-		common.assertIsInFileListView();
-	}
-	
-	
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-
-}

+ 0 - 77
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RefreshFolderTestSuite.java

@@ -1,77 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.UnfinishedTestCategory;
-import com.owncloud.android.test.ui.models.FileListView;
-
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class RefreshFolderTestSuite{
-	AndroidDriver driver;
-	Common common;
-	
-	@Rule public TestName name = new TestName();
-
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-
-	@Test
-	@Category({UnfinishedTestCategory.class})
-	public void testPulldownToRefreshFolder () throws Exception {
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		//TODO. Remove the sleep and check why is not working the assert 
-		//when using waitTillElementIsNotPresent
-		Thread.sleep(5000);
-		//waitTillElementIsNotPresentWithoutTimeout(fileListView.getProgressCircular(), 1000);
-		fileListView.pulldownToRefresh();
-		assertTrue(fileListView.getProgressCircular().isDisplayed());
-		//TODO insert a file in the web, and check that it's shown here
-	}
-
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-
-}

+ 0 - 114
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RenameFileTestSuite.java

@@ -1,114 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-import org.openqa.selenium.By;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.models.ElementMenuOptions;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.NewFolderPopUp;
-import com.owncloud.android.test.ui.models.WaitAMomentPopUp;
-
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class RenameFileTestSuite{
-
-	AndroidDriver driver;
-	Common common;
-	private Boolean fileHasBeenCreated = false;
-	private final String OLD_FILE_NAME = Config.fileToTestName;
-	private final String FILE_NAME = "newNameFile";
-	private String CurrentCreatedFile = "";
-	
-	@Rule public TestName name = new TestName();
-
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testRenameFile () throws Exception {
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-
-		//TODO. if the file already exists, do not upload
-		FileListView fileListViewAfterUploadFile = Actions
-				.uploadFile(OLD_FILE_NAME, fileListView);
-
-		//check if the file with the new name already exists, if true delete it
-		Actions.deleteElement(FILE_NAME, fileListView, driver);
-
-		fileListViewAfterUploadFile.scrollTillFindElement(OLD_FILE_NAME);
-		assertTrue(fileHasBeenCreated = fileListViewAfterUploadFile
-				.getFileElement().isDisplayed());
-		CurrentCreatedFile = OLD_FILE_NAME;
-		Common.waitTillElementIsNotPresentWithoutTimeout(fileListViewAfterUploadFile
-				.getProgressCircular(), 1000);
-		common.wait.until(ExpectedConditions.visibilityOf(
-				fileListViewAfterUploadFile.getFileElementLayout()
-				.findElement(By.id(FileListView.getLocalFileIndicator()))));
-		ElementMenuOptions menuOptions = fileListViewAfterUploadFile
-				.longPressOnElement(OLD_FILE_NAME);
-		NewFolderPopUp newFolderPopUp = menuOptions.clickOnRename();
-		newFolderPopUp.typeNewFolderName(FILE_NAME);
-		WaitAMomentPopUp waitAMomentPopUp = newFolderPopUp
-				.clickOnNewFolderOkButton();
-		Common.waitTillElementIsNotPresentWithoutTimeout(waitAMomentPopUp
-				.getWaitAMomentTextElement(), 100);
-		fileListViewAfterUploadFile.scrollTillFindElement(FILE_NAME);
-		assertNotNull(fileListViewAfterUploadFile.getFileElement());
-		assertTrue(fileListViewAfterUploadFile.getFileElement().isDisplayed());	
-		assertEquals(FILE_NAME , fileListViewAfterUploadFile.getFileElement()
-				.getText());
-		CurrentCreatedFile = FILE_NAME;
-	}
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		if (fileHasBeenCreated) {
-			FileListView fileListView = new FileListView(driver);
-			Actions.deleteElement(CurrentCreatedFile,fileListView, driver);
-		}
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-
-}

+ 0 - 112
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RenameFolderTestSuite.java

@@ -1,112 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.models.ElementMenuOptions;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.NewFolderPopUp;
-import com.owncloud.android.test.ui.models.WaitAMomentPopUp;
-
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-public class RenameFolderTestSuite{
-
-	AndroidDriver driver;
-	Common common;
-	private Boolean folderHasBeenCreated = false;
-	private final String OLD_FOLDER_NAME = "beforeRemoving";
-	private final String FOLDER_NAME = "testCreateFolder";
-	private String CurrentCreatedFolder = "";
-	
-	@Rule public TestName name = new TestName();
-
-
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testRenameFolder () throws Exception {
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-
-		//TODO. if the folder already exists, do no created
-		//create the folder to rename
-		WaitAMomentPopUp waitAMomentPopUp = Actions
-				.createFolder(OLD_FOLDER_NAME, fileListView);
-		Common.waitTillElementIsNotPresentWithoutTimeout(
-				waitAMomentPopUp.getWaitAMomentTextElement(), 100);
-		fileListView.scrollTillFindElement(OLD_FOLDER_NAME);
-
-		assertTrue(
-			folderHasBeenCreated = fileListView.getFileElement().isDisplayed());
-
-		//check if the folder with the new name already exists 
-		//and if true, delete them
-		Actions.deleteElement(FOLDER_NAME, fileListView, driver);
-
-		CurrentCreatedFolder = OLD_FOLDER_NAME;
-		ElementMenuOptions menuOptions = fileListView
-				.longPressOnElement(OLD_FOLDER_NAME);
-		NewFolderPopUp FolderPopUp = menuOptions.clickOnRename();
-		FolderPopUp.typeNewFolderName(FOLDER_NAME);
-		FolderPopUp.clickOnNewFolderOkButton();
-		CurrentCreatedFolder = FOLDER_NAME;
-		Common.waitTillElementIsNotPresentWithoutTimeout(waitAMomentPopUp
-				.getWaitAMomentTextElement(), 100);
-		fileListView.scrollTillFindElement(FOLDER_NAME);
-		assertNotNull(fileListView.getFileElement());
-		assertTrue(
-			folderHasBeenCreated = fileListView.getFileElement().isDisplayed());	
-		assertEquals(FOLDER_NAME , fileListView.getFileElement().getText());
-	}
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		if(folderHasBeenCreated){
-			FileListView fileListView = new FileListView(driver);
-			Actions.deleteElement(CurrentCreatedFolder, fileListView, driver);
-		}
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-
-}

+ 0 - 44
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RunFailingTests.java

@@ -1,44 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-
-import org.junit.experimental.categories.Categories.ExcludeCategory;
-import org.junit.experimental.categories.Categories.IncludeCategory;
-import org.junit.runner.RunWith;
-
-import com.owncloud.android.test.ui.groups.FailingTestCategory;
-import com.owncloud.android.test.ui.groups.FlexibleCategories;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestClassPrefix;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestClassSuffix;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestScanPackage;
-
-
-@RunWith(FlexibleCategories.class)
-@ExcludeCategory(NoIgnoreTestCategory.class)
-@IncludeCategory(FailingTestCategory.class)
-@TestScanPackage("com.owncloud.android.test.ui.testSuites")
-@TestClassPrefix("")
-@TestClassSuffix("TestSuite")
-public class RunFailingTests {
-
-}

+ 0 - 19
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RunInProgressTest.java

@@ -1,19 +0,0 @@
-package com.owncloud.android.test.ui.testSuites;
-
-import org.junit.experimental.categories.Categories.IncludeCategory;
-import org.junit.runner.RunWith;
-import com.owncloud.android.test.ui.groups.FlexibleCategories;
-import com.owncloud.android.test.ui.groups.InProgressCategory;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestClassPrefix;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestClassSuffix;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestScanPackage;
-
-
-@RunWith(FlexibleCategories.class)
-@IncludeCategory(InProgressCategory.class)
-@TestScanPackage("com.owncloud.android.test.ui.testSuites")
-@TestClassPrefix("")
-@TestClassSuffix("TestSuite")
-public class RunInProgressTest {
-
-}

+ 0 - 42
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RunNoIgnoreTests.java

@@ -1,42 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import org.junit.experimental.categories.Categories.ExcludeCategory;
-import org.junit.experimental.categories.Categories.IncludeCategory;
-import org.junit.runner.RunWith;
-
-import com.owncloud.android.test.ui.groups.FlexibleCategories;
-import com.owncloud.android.test.ui.groups.IgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestClassPrefix;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestClassSuffix;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestScanPackage;
-
-
-@RunWith(FlexibleCategories.class)
-@ExcludeCategory(IgnoreTestCategory.class)
-@IncludeCategory(NoIgnoreTestCategory.class)
-@TestScanPackage("com.owncloud.android.test.ui.testSuites")
-@TestClassPrefix("")
-@TestClassSuffix("TestSuite")
-public class RunNoIgnoreTests {
-}

+ 0 - 42
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/RunSmokeTests.java

@@ -1,42 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import org.junit.experimental.categories.Categories.ExcludeCategory;
-import org.junit.experimental.categories.Categories.IncludeCategory;
-import org.junit.runner.RunWith;
-
-import com.owncloud.android.test.ui.groups.FlexibleCategories;
-import com.owncloud.android.test.ui.groups.IgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestClassPrefix;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestClassSuffix;
-import com.owncloud.android.test.ui.groups.FlexibleCategories.TestScanPackage;
-
-
-@RunWith(FlexibleCategories.class)
-@ExcludeCategory(IgnoreTestCategory.class)
-@IncludeCategory(SmokeTestCategory.class)
-@TestScanPackage("com.owncloud.android.test.ui.testSuites")
-@TestClassPrefix("")
-@TestClassSuffix("TestSuite")
-public class RunSmokeTests {
-}

+ 0 - 133
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/ShareLinkFileTestSuite.java

@@ -1,133 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-import static org.junit.Assert.*;
-import io.appium.java_client.android.AndroidDriver;
-import io.appium.java_client.android.AndroidElement;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.IgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.InProgressCategory;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.models.FileListView;;
-
-public class ShareLinkFileTestSuite{
-	
-	AndroidDriver driver;
-	Common common;
-	private final String FILE_NAME = Config.fileToTestName;
-	private Boolean fileHasBeenCreated = false;
-	
-	@Rule public TestName name = new TestName();
-	
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-	@Test
-	@Category({NoIgnoreTestCategory.class})
-	public void testShareLinkFileByGmail () throws Exception {	
-		AndroidElement sharedElementIndicator;
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		
-		//TODO. if the file already exists, do not upload
-		FileListView fileListViewAfterUploadFile = Actions
-				.uploadFile(FILE_NAME, fileListView);
-				
-		fileListViewAfterUploadFile.scrollTillFindElement(FILE_NAME);
-		assertTrue(fileHasBeenCreated = fileListViewAfterUploadFile
-				.getFileElement().isDisplayed());
-		
-		sharedElementIndicator = Actions.shareLinkElementByGmail(FILE_NAME,
-				fileListViewAfterUploadFile,driver,common);
-		assertTrue(sharedElementIndicator.isDisplayed());
-	}
-	
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testShareLinkFileByCopyLink () throws Exception {	
-		AndroidElement sharedElementIndicator;
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		
-		//TODO. if the file already exists, do not upload
-		FileListView fileListViewAfterUploadFile = Actions
-				.uploadFile(FILE_NAME, fileListView);
-				
-		fileListViewAfterUploadFile.scrollTillFindElement(FILE_NAME);
-		assertTrue(fileHasBeenCreated = fileListViewAfterUploadFile
-				.getFileElement().isDisplayed());
-		
-		sharedElementIndicator = Actions.shareLinkElementByCopyLink(FILE_NAME,
-				fileListViewAfterUploadFile,driver,common);
-		assertTrue(sharedElementIndicator.isDisplayed());
-	}
-	
-	@Test
-	@Category({IgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testUnshareLinkFile () throws Exception {	
-		AndroidElement sharedElementIndicator;
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-		
-		//TODO. if the file already exists, do not upload
-		FileListView fileListViewAfterUploadFile = Actions
-				.uploadFile(FILE_NAME, fileListView);
-				
-		fileListViewAfterUploadFile.scrollTillFindElement(FILE_NAME);
-		assertTrue(fileHasBeenCreated = fileListViewAfterUploadFile
-				.getFileElement().isDisplayed());
-		
-		sharedElementIndicator = Actions.shareLinkElementByCopyLink(FILE_NAME,
-				fileListViewAfterUploadFile,driver,common);
-		assertTrue(sharedElementIndicator.isDisplayed());
-		Actions.unshareLinkElement(FILE_NAME,
-				fileListViewAfterUploadFile,driver,common);
-		assertFalse(sharedElementIndicator.isDisplayed());
-
-	}
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		if (fileHasBeenCreated) {
-			FileListView fileListView = new FileListView(driver);
-			Actions.deleteElement(FILE_NAME,fileListView, driver);
-		}
-		driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-}

+ 0 - 285
automationTest/src/test/java/com/owncloud/android/test/ui/testSuites/UploadTestSuite.java

@@ -1,285 +0,0 @@
-/**
- *   ownCloud Android client application
- *
- *   @author purigarcia
- *   Copyright (C) 2015 ownCloud Inc.
- *
- *   This program is free software: you can redistribute it and/or modify
- *   it under the terms of the GNU General Public License version 2,
- *   as published by the Free Software Foundation.
- *
- *   This program 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.owncloud.android.test.ui.testSuites;
-
-
-import static org.junit.Assert.*;
-import io.appium.java_client.MobileBy;
-import io.appium.java_client.android.AndroidDriver;
-
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.junit.runners.MethodSorters;
-import org.junit.FixMethodOrder;
-import org.junit.Test;
-import org.openqa.selenium.By;
-import org.openqa.selenium.NoSuchElementException;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-
-import com.owncloud.android.test.ui.actions.Actions;
-import com.owncloud.android.test.ui.groups.FailingTestCategory;
-import com.owncloud.android.test.ui.groups.InProgressCategory;
-import com.owncloud.android.test.ui.groups.NoIgnoreTestCategory;
-import com.owncloud.android.test.ui.groups.SmokeTestCategory;
-import com.owncloud.android.test.ui.groups.UnfinishedTestCategory;
-import com.owncloud.android.test.ui.models.FileDetailsView;
-import com.owncloud.android.test.ui.models.ElementMenuOptions;
-import com.owncloud.android.test.ui.models.GmailEmailListView;
-import com.owncloud.android.test.ui.models.GmailEmailView;
-import com.owncloud.android.test.ui.models.ImageView;
-import com.owncloud.android.test.ui.models.FileListView;
-import com.owncloud.android.test.ui.models.NotificationView;
-import com.owncloud.android.test.ui.models.SettingsView;
-import com.owncloud.android.test.ui.models.UploadView;
-
-
-@FixMethodOrder(MethodSorters.NAME_ASCENDING)
-@Category({NoIgnoreTestCategory.class})
-public class UploadTestSuite{
-
-	AndroidDriver driver;
-	Common common;
-	String FILE_NAME = Config.fileToTestName;
-	String BIG_FILE_NAME = Config.bigFileToTestName;
-	String FILE_GMAIL_NAME = Config.fileToTestSendByEmailName;
-	private Boolean fileHasBeenUploadedFromGmail = false;
-	private Boolean fileHasBeenUploaded = false;
-
-	@Rule public TestName name = new TestName();
-
-
-	@Before
-	public void setUp() throws Exception {
-		common=new Common();
-		driver=common.setUpCommonDriver();
-	}
-
-	@Test
-	@Category({NoIgnoreTestCategory.class, SmokeTestCategory.class})
-	public void testUploadFile () throws Exception {
-
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-
-		//check if the file already exists and if true, delete it
-		Actions.deleteElement(FILE_NAME, fileListView, driver);
-
-		FileListView fileListViewAfterUploadFile = Actions
-				.uploadFile(FILE_NAME, fileListView);
-
-		fileListViewAfterUploadFile.scrollTillFindElement(FILE_NAME);
-		assertTrue(fileListViewAfterUploadFile.getFileElement().isDisplayed());
-		Common.waitTillElementIsNotPresentWithoutTimeout(
-				fileListViewAfterUploadFile.getProgressCircular(), 1000);
-		common.wait.until(ExpectedConditions.visibilityOf(
-				fileListViewAfterUploadFile.getFileElementLayout()
-				.findElement(By.id(FileListView.getLocalFileIndicator()))));
-		assertTrue(fileListViewAfterUploadFile.getFileElementLayout()
-				.findElement(By.id(FileListView.getLocalFileIndicator()))
-				.isDisplayed());
-		fileListView = new FileListView(driver);
-		fileListView.scrollTillFindElement(FILE_NAME);
-		assertTrue(
-				fileHasBeenUploaded = fileListView.getFileElement().isDisplayed());
-	}
-
-	
-	
-	@Test
-	@Category({UnfinishedTestCategory.class})
-	public void testUploadBigFile () throws Exception {
-
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-
-		//check if the file already exists and if true, delete it
-		Actions.deleteElement(BIG_FILE_NAME, fileListView, driver);
-
-		FileListView fileListViewAfterUploadFile = Actions
-				.uploadFile(BIG_FILE_NAME, fileListView);
-
-		
-		driver.openNotifications();
-		NotificationView notificationView = new NotificationView(driver);
-
-		try{
-			if(notificationView.getUploadingNotification().isDisplayed()){
-				Common.waitTillElementIsPresent(
-						notificationView.getUploadSucceededNotification(),300000);
-				driver.sendKeyEvent(android.view.KeyEvent.KEYCODE_HOME);
-				driver.startActivity("com.owncloud.android", 
-						".ui.activity.FileDisplayActivity");
-				
-			}
-		} catch (NoSuchElementException e) {
-			driver.sendKeyEvent(android.view.KeyEvent.KEYCODE_HOME);
-			driver.startActivity("com.owncloud.android", 
-					".ui.activity.FileDisplayActivity");
-		}
-
-		fileListViewAfterUploadFile.scrollTillFindElement(BIG_FILE_NAME);
-
-		assertTrue(fileListViewAfterUploadFile.getFileElement().isDisplayed());
-		
-		Common.waitTillElementIsNotPresentWithoutTimeout(
-				fileListViewAfterUploadFile.getProgressCircular(), 1000);
-		common.wait.until(ExpectedConditions.visibilityOf(
-				fileListViewAfterUploadFile.getFileElementLayout()
-				.findElement(By.id(FileListView.getLocalFileIndicator()))));
-		assertTrue(fileListViewAfterUploadFile.getFileElementLayout()
-				.findElement(By.id(FileListView.getLocalFileIndicator()))
-				.isDisplayed());
-		fileListView = new FileListView(driver);
-		fileListView.scrollTillFindElement(BIG_FILE_NAME);
-		assertTrue(
-				fileHasBeenUploaded = fileListView.getFileElement().isDisplayed());
-	}
-
-
-	@Test
-	@Category(UnfinishedTestCategory.class)
-	public void testUploadFromGmail () throws Exception {
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		driver.startActivity("com.google.android.gm",
-				".ConversationListActivityGmail");
-		GmailEmailListView gmailEmailListView = new GmailEmailListView(driver);
-		Thread.sleep(3000);
-		GmailEmailView gmailEmailView = gmailEmailListView.clickOnEmail();
-		ImageView imageView = gmailEmailView.clickOnfileButton();
-		imageView.clickOnOptionsButton();
-		imageView.clickOnShareButton();
-		imageView.clickOnOwnCloudButton();
-		//justonce button do not appear always
-		try{
-			imageView.clickOnJustOnceButton();
-		}catch (NoSuchElementException e) {
-		}
-		UploadView uploadView = new UploadView(driver);
-		uploadView.clickOUploadButton();
-		driver.sendKeyEvent(android.view.KeyEvent.KEYCODE_HOME);
-		driver.startActivity("com.owncloud.android",
-				".ui.activity.FileDisplayActivity");
-		common.wait.until(ExpectedConditions
-				.visibilityOfAllElementsLocatedBy(By.name(FILE_GMAIL_NAME)));
-		assertEquals(Config.fileToTestSendByEmailName ,
-				driver.findElementByName(FILE_GMAIL_NAME).getText());
-		fileListView = new FileListView(driver);
-		fileListView.scrollTillFindElement(FILE_GMAIL_NAME);
-		assertTrue(fileHasBeenUploadedFromGmail = fileListView
-				.getFileElement().isDisplayed());
-		//TODO. correct assert if fileListView is shown in grid mode
-	}
-
-
-	@Test	
-	@Category({FailingTestCategory.class})
-	public void testKeepFileUpToDate () throws Exception {
-
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-
-		Common.waitTillElementIsNotPresentWithoutTimeout(fileListView.getProgressCircular(), 
-				1000);
-
-		FileListView fileListViewAfterUploadFile = Actions
-				.uploadFile(FILE_NAME, fileListView);
-		fileListViewAfterUploadFile.scrollTillFindElement(FILE_NAME);
-		assertTrue(fileHasBeenUploaded = fileListViewAfterUploadFile
-				.getFileElement().isDisplayed());
-
-		ElementMenuOptions menuOptions = fileListViewAfterUploadFile
-				.longPressOnElement(FILE_NAME);
-		FileDetailsView fileDetailsView = menuOptions.clickOnDetails();
-		fileDetailsView.checkKeepFileUpToDateCheckbox();
-		Thread.sleep(3000);
-		driver.sendKeyEvent(android.view.KeyEvent.KEYCODE_BACK);
-		assertTrue(common.isElementPresent(
-				fileListViewAfterUploadFile.getFileElementLayout(), 
-				MobileBy.id(FileListView.getFavoriteFileIndicator())));
-		assertTrue(fileListViewAfterUploadFile.getFileElementLayout()
-				.findElement(By.id(FileListView.getFavoriteFileIndicator()))
-				.isDisplayed());
-	}
-
-	@Test	
-	@Category({NoIgnoreTestCategory.class})
-	public void testKeepFileUpToDateAndRefresh () throws Exception {
-
-		FileListView fileListView = Actions.login(Config.URL, Config.user,
-				Config.password, Config.isTrusted, driver);
-		common.assertIsInFileListView();
-
-		Common.waitTillElementIsNotPresentWithoutTimeout(fileListView.getProgressCircular(), 
-				1000);
-
-		FileListView fileListViewAfterUploadFile = Actions
-				.uploadFile(FILE_NAME, fileListView);
-		fileListViewAfterUploadFile.scrollTillFindElement(FILE_NAME);
-		assertTrue(fileHasBeenUploaded = fileListViewAfterUploadFile
-				.getFileElement().isDisplayed());
-
-		ElementMenuOptions menuOptions = fileListViewAfterUploadFile
-				.longPressOnElement(FILE_NAME);
-		FileDetailsView fileDetailsView = menuOptions.clickOnDetails();
-		fileDetailsView.checkKeepFileUpToDateCheckbox();
-		Thread.sleep(3000);
-		driver.sendKeyEvent(android.view.KeyEvent.KEYCODE_BACK);
-
-		fileListViewAfterUploadFile.pulldownToRefresh();
-		//assertTrue(fileListView.getProgressCircular().isDisplayed());
-		Common.waitTillElementIsNotPresentWithoutTimeout(fileListView.getProgressCircular(), 
-				100);
-
-		assertTrue(common.isElementPresent(
-				fileListViewAfterUploadFile.getFileElementLayout(), 
-				MobileBy.id(FileListView.getFavoriteFileIndicator())));
-		assertTrue(fileListViewAfterUploadFile.getFileElementLayout()
-				.findElement(By.id(FileListView.getFavoriteFileIndicator()))
-				.isDisplayed());
-	}
-
-
-	@After
-	public void tearDown() throws Exception {
-		common.takeScreenShotOnFailed(name.getMethodName());
-		FileListView fileListView = new FileListView(driver);
-		if (fileHasBeenUploadedFromGmail) {
-			Actions.deleteElement(FILE_GMAIL_NAME,fileListView, driver);
-		}
-		if(fileHasBeenUploaded){
-			Actions.deleteElement(FILE_NAME,fileListView, driver);
-			Actions.deleteElement(BIG_FILE_NAME,fileListView, driver);
-		}
-
-		//driver.removeApp("com.owncloud.android");
-		driver.quit();
-	}
-
-
-}
-

+ 0 - 4
automationTest/src/test/resources/.gitignore

@@ -1,4 +0,0 @@
-# Ignore everything in this directory
-*
-# Except this file
-!.gitignore