1 package androidtest
.tests
;
4 import io
.appium
.java_client
.MobileBy
;
6 import org
.junit
.After
;
7 import org
.junit
.Before
;
8 import org
.junit
.runners
.MethodSorters
;
9 import org
.junit
.FixMethodOrder
;
10 import org
.junit
.Test
;
11 import org
.openqa
.selenium
.By
;
12 import org
.openqa
.selenium
.support
.ui
.ExpectedConditions
;
14 import androidtest
.actions
.Actions
;
15 import androidtest
.models
.AppDetailsView
;
16 import androidtest
.models
.ElementMenuOptions
;
17 import androidtest
.models
.MainView
;
20 @FixMethodOrder(MethodSorters
.NAME_ASCENDING
)
21 public class UploadTestSuite
extends Common
{
23 String FILE_NAME
= "test";
26 public void setUp() throws Exception
{
31 public void test1UploadFile () throws Exception
{
33 MainView mainView
= Actions
.login(Config
.URL
, Config
.user
,Config
.password
, Config
.isTrusted
, driver
);
34 assertTrue(waitForTextPresent("ownCloud", mainView
.getTitleTextElement()));
36 //check if the file already exists and if true, delete it
37 Actions
.deleteElement(FILE_NAME
, mainView
, driver
);
39 MainView mainViewAfterUploadFile
= Actions
.uploadFile(FILE_NAME
, mainView
);
41 mainViewAfterUploadFile
.scrollTillFindElement(FILE_NAME
);
42 assertTrue(mainViewAfterUploadFile
.getFileElement().isDisplayed());
43 waitTillElementIsNotPresent(mainViewAfterUploadFile
.getProgressCircular(), 1000);
44 wait
.until(ExpectedConditions
.visibilityOf(mainViewAfterUploadFile
.getFileElementLayout().findElement(By
.id(MainView
.getLocalFileIndicator()))));
50 public void test2KeepFileUpToDate () throws Exception
{
52 MainView mainView
= Actions
.login(Config
.URL
, Config
.user
,Config
.password
, Config
.isTrusted
, driver
);
53 assertTrue(waitForTextPresent("ownCloud", mainView
.getTitleTextElement()));
55 waitTillElementIsNotPresent(mainView
.getProgressCircular(), 1000);
57 MainView mainViewAfterUploadFile
= Actions
.uploadFile(FILE_NAME
, mainView
);
58 mainViewAfterUploadFile
.scrollTillFindElement(FILE_NAME
);
59 assertTrue(mainViewAfterUploadFile
.getFileElement().isDisplayed());
61 ElementMenuOptions menuOptions
= mainViewAfterUploadFile
.longPressOnElement(FILE_NAME
);
62 AppDetailsView appDetailsView
= menuOptions
.clickOnDetails();
63 appDetailsView
.checkKeepFileUpToDateCheckbox();
65 driver
.sendKeyEvent(android
.view
.KeyEvent
.KEYCODE_BACK
);
66 assertTrue(isElementPresent(mainViewAfterUploadFile
.getFileElementLayout(), MobileBy
.id(MainView
.getFavoriteFileIndicator())));
72 public void tearDown() throws Exception
{
73 MainView mainView
= new MainView(driver
);
74 Actions
.deleteElement(FILE_NAME
,mainView
, driver
);
75 driver
.removeApp("com.owncloud.android");