Browse Source

OC-1869: Create Unit Tests

masensio 11 years ago
parent
commit
e941d571cf

+ 3 - 1
oc_framework-test-project/AndroidManifest.xml

@@ -5,11 +5,13 @@
     android:versionName="1.0" >
     
     <uses-permission android:name="android.permission.USE_CREDENTIALS" />
+    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
     <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
+    <uses-permission android:name="android.permission.INTERNET"/>
     
     <uses-sdk
         android:minSdkVersion="8"
-        android:targetSdkVersion="18" />
+        android:targetSdkVersion="19" />
 
     <application
         android:allowBackup="true"

+ 10 - 4
oc_framework-test-project/oc_framework-test-test/src/com/owncloud/android/oc_framework_test_project/test/CreateFolderTest.java

@@ -1,5 +1,8 @@
 package com.owncloud.android.oc_framework_test_project.test;
 
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
 import com.owncloud.android.oc_framework.operations.RemoteOperationResult;
 import com.owncloud.android.oc_framework_test_project.TestActivity;
 
@@ -9,10 +12,13 @@ import android.util.Log;
 public class CreateFolderTest extends ActivityInstrumentationTestCase2<TestActivity> {
 
 	private TestActivity mActivity;
+	private String mCurrentDate;
 	
 	public CreateFolderTest() {
 	    super(TestActivity.class);
 	   
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd_HHmmss");
+		mCurrentDate = sdf.format(new Date());
 	}
 	
 	@Override
@@ -23,8 +29,8 @@ public class CreateFolderTest extends ActivityInstrumentationTestCase2<TestActiv
 	}
 	
 	public void testCreateFolder() {
-		
-		String remotePath = "beta.owncloud.com/owncloud/testCreateFolder";
+
+		String remotePath = "/testCreateFolder" + mCurrentDate;
 		boolean createFullPath = true;
 		
 		RemoteOperationResult result =  mActivity.createFolder(remotePath, createFullPath);
@@ -34,11 +40,11 @@ public class CreateFolderTest extends ActivityInstrumentationTestCase2<TestActiv
 	}
 	
 	public void testCreateFolderSpecialCharacters() {
-		String remotePath = "beta.owncloud.com/owncloud/test^^SpecialCharacters";
+		String remotePath = "/test^^SpecialCharacters" + mCurrentDate;
 		boolean createFullPath = true;
 		
 		RemoteOperationResult result =  mActivity.createFolder(remotePath, createFullPath);
-		assertTrue(result.isSuccess());
+		assertFalse(result.isSuccess());
 	}
 
 

+ 35 - 8
oc_framework-test-project/src/com/owncloud/android/oc_framework_test_project/TestActivity.java

@@ -1,6 +1,7 @@
 package com.owncloud.android.oc_framework_test_project;
 
 import java.io.IOException;
+
 import com.owncloud.android.oc_framework.authentication.AccountUtils.AccountNotFoundException;
 import com.owncloud.android.oc_framework.network.OwnCloudClientUtils;
 import com.owncloud.android.oc_framework.network.webdav.WebdavClient;
@@ -16,31 +17,51 @@ import android.app.Activity;
 import android.util.Log;
 import android.view.Menu;
 
+/**
+ * Activity to test OC framework
+ * @author masensio
+ *
+ */
 public class TestActivity extends Activity {
 	
 	private static final String TAG = "TestActivity";
 	
-	private Account mAccount;
+	private Account mAccount = null;
 	private WebdavClient mClient;
 	
 	@Override
 	protected void onCreate(Bundle savedInstanceState) {
 		super.onCreate(savedInstanceState);
 		setContentView(R.layout.activity_test);
-
-		String accountName = "admin@beta.owncloud.com";
+		
 		String accountHost = "beta.owncloud.com";
-		String accountUser = "admin";
-		String accountPass = "owncloud42";
+		String accountUser = "masensio";
+		String accountName = accountUser + "@"+ accountHost;
+		String accountPass = "masensio";
 		String accountType = "owncloud";	
-		String accountTypePass = "owncloud.password";
 		String authorities = "org.owncloud";
 
-		mAccount = new Account(accountName, accountType);
 		AccountManager am = AccountManager.get(this);
-		am.addAccountExplicitly(mAccount, accountPass, null);
 		
+		Account[] ocAccounts = am.getAccountsByType(accountType);
+        for (Account ac : ocAccounts) {
+           if (ac.name.equals(accountName)) {
+        	   mAccount = ac;
+        	   break;
+            }
+        }
 
+        if (mAccount == null) {
+			mAccount = new Account(accountName, accountType);	
+			am.addAccountExplicitly(mAccount, accountPass, null);
+	        am.setUserData(mAccount, "oc_version",    "5.0.14");
+	        am.setUserData(mAccount, "oc_base_url",   "http://beta.owncloud.com/owncloud");
+        } else {
+            Log.d(TAG, "oc_version --->"+ am.getUserData(mAccount, "oc_version") );
+            Log.d(TAG, "oc_base_url --->"+ am.getUserData(mAccount, "oc_base_url") );
+        }
+        	
+        
 		try {
 			mClient = OwnCloudClientUtils.createOwnCloudClient(mAccount, this.getApplicationContext(), authorities);
 		} catch (OperationCanceledException e) {
@@ -65,6 +86,12 @@ public class TestActivity extends Activity {
 		return true;
 	}
 
+	/**
+	 * Access to the library method to Create a Folder
+	 * @param remotePath
+	 * @param createFullPath
+	 * @return
+	 */
 	public RemoteOperationResult createFolder(String remotePath, boolean createFullPath) {
 		
 		CreateRemoteFolderOperation createOperation = new CreateRemoteFolderOperation(remotePath, createFullPath);