OC-1869: Create Unit Tests
authormasensio <masensio@solidgear.es>
Tue, 12 Nov 2013 13:13:50 +0000 (14:13 +0100)
committermasensio <masensio@solidgear.es>
Tue, 12 Nov 2013 13:13:50 +0000 (14:13 +0100)
oc_framework-test-project/AndroidManifest.xml
oc_framework-test-project/oc_framework-test-test/src/com/owncloud/android/oc_framework_test_project/test/CreateFolderTest.java
oc_framework-test-project/src/com/owncloud/android/oc_framework_test_project/TestActivity.java

index b7d12fd..d4d5316 100644 (file)
@@ -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"
index 61184d4..34b8f32 100644 (file)
@@ -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());
        }
 
 
index 8c5ed05..057e345 100644 (file)
@@ -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);