mirror of
https://github.com/owncloud/android-library.git
synced 2025-06-07 16:06:08 +00:00
Updated ReadFileTest to work with an empty OC server
This commit is contained in:
parent
f3eac35cd3
commit
e2380a6a5c
3
test_client/assets/textFile.txt
Normal file
3
test_client/assets/textFile.txt
Normal file
@ -0,0 +1,3 @@
|
||||
This is a simple text file.
|
||||
|
||||
To make some tests.
|
@ -25,6 +25,10 @@
|
||||
package com.owncloud.android.lib.test_project;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.security.GeneralSecurityException;
|
||||
|
||||
import org.apache.commons.httpclient.protocol.Protocol;
|
||||
@ -52,6 +56,7 @@ import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.os.Environment;
|
||||
import android.app.Activity;
|
||||
import android.content.res.AssetManager;
|
||||
import android.util.Log;
|
||||
import android.view.Menu;
|
||||
|
||||
@ -66,11 +71,13 @@ public class TestActivity extends Activity {
|
||||
private static final String TAG = null;
|
||||
// This account must exists on the server side
|
||||
private String mServerUri;
|
||||
private String mWebdavPath;
|
||||
private String mUser;
|
||||
private String mPass;
|
||||
private boolean mChunked;
|
||||
|
||||
private static final String WEBDAV_PATH = "/remote.php/webdav";
|
||||
private static final int BUFFER_SIZE = 1024;
|
||||
|
||||
//private Account mAccount = null;
|
||||
private OwnCloudClient mClient;
|
||||
|
||||
@ -80,7 +87,6 @@ public class TestActivity extends Activity {
|
||||
setContentView(R.layout.activity_test);
|
||||
|
||||
mServerUri = getString(R.string.server_base_url);
|
||||
mWebdavPath = getString(R.string.webdav_path);
|
||||
mUser = getString(R.string.username);
|
||||
mPass = getString(R.string.password);
|
||||
mChunked = getResources().getBoolean(R.bool.chunked);
|
||||
@ -98,7 +104,7 @@ public class TestActivity extends Activity {
|
||||
}
|
||||
}
|
||||
|
||||
Uri uri = Uri.parse(mServerUri + mWebdavPath);
|
||||
Uri uri = Uri.parse(mServerUri + WEBDAV_PATH);
|
||||
mClient = new OwnCloudClient(NetworkUtils.getMultiThreadedConnManager());
|
||||
mClient.setDefaultTimeouts(
|
||||
OwnCloudClientFactory.DEFAULT_DATA_TIMEOUT,
|
||||
@ -108,6 +114,8 @@ public class TestActivity extends Activity {
|
||||
mClient.setBasicCredentials(mUser, mPass);
|
||||
mClient.setBaseUri(Uri.parse(mServerUri));
|
||||
|
||||
Log.v(TAG, "onCreate finished, ownCloud client ready");
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -273,4 +281,33 @@ public class TestActivity extends Activity {
|
||||
return result;
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Extracts file from AssetManager to cache folder.
|
||||
*
|
||||
* @param fileName Name of the asset file to extract.
|
||||
* @return File instance of the extracted file.
|
||||
*/
|
||||
public File extractAsset(String fileName) throws IOException {
|
||||
File extractedFile = new File(getCacheDir() + File.separator + fileName);
|
||||
if (!extractedFile.exists()) {
|
||||
InputStream in = null;
|
||||
FileOutputStream out = null;
|
||||
in = getAssets().open(fileName);
|
||||
out = new FileOutputStream(extractedFile);
|
||||
byte[] buffer = new byte[BUFFER_SIZE];
|
||||
int readCount;
|
||||
while((readCount = in.read(buffer)) != -1){
|
||||
out.write(buffer, 0, readCount);
|
||||
}
|
||||
out.flush();
|
||||
out.close();
|
||||
in.close();
|
||||
}
|
||||
return extractedFile;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
@ -23,22 +23,26 @@
|
||||
*/
|
||||
package com.owncloud.android.lib.test_project.test;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
import com.owncloud.android.lib.common.operations.RemoteOperationResult;
|
||||
import com.owncloud.android.lib.resources.files.FileUtils;
|
||||
import com.owncloud.android.lib.test_project.TestActivity;
|
||||
|
||||
import android.test.ActivityInstrumentationTestCase2;
|
||||
import android.util.Log;
|
||||
|
||||
/**
|
||||
* Class to test Read File Operation
|
||||
* @author masensio
|
||||
*
|
||||
* @author David A. Velasco
|
||||
*/
|
||||
|
||||
public class ReadFileTest extends ActivityInstrumentationTestCase2<TestActivity> {
|
||||
|
||||
/* File data to read. This file must exist on the account */
|
||||
private final String mRemoteFolderPath = "/fileToRead.txt";
|
||||
private static final String LOG_TAG = ReadFileTest.class.getCanonicalName();
|
||||
|
||||
private static final String TEXT_FILE_NAME = "textFile.txt";
|
||||
|
||||
private TestActivity mActivity;
|
||||
|
||||
@ -49,19 +53,43 @@ public class ReadFileTest extends ActivityInstrumentationTestCase2<TestActivity
|
||||
@Override
|
||||
protected void setUp() throws Exception {
|
||||
super.setUp();
|
||||
|
||||
setActivityInitialTouchMode(false);
|
||||
mActivity = getActivity();
|
||||
|
||||
File textFile = mActivity.extractAsset(TEXT_FILE_NAME);
|
||||
RemoteOperationResult uploadResult = mActivity.uploadFile(
|
||||
textFile.getAbsolutePath(),
|
||||
FileUtils.PATH_SEPARATOR + TEXT_FILE_NAME,
|
||||
"txt/plain");
|
||||
if (!uploadResult.isSuccess()) {
|
||||
logAndThrow(uploadResult);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Test Read File
|
||||
*/
|
||||
public void testReadFile() {
|
||||
|
||||
RemoteOperationResult result = mActivity.readFile(mRemoteFolderPath);
|
||||
RemoteOperationResult result = mActivity.readFile(TEXT_FILE_NAME);
|
||||
assertTrue(result.getData().size() == 1);
|
||||
assertTrue(result.isSuccess());
|
||||
// TODO check more properties of the result
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void tearDown() throws Exception {
|
||||
RemoteOperationResult removeResult = mActivity.removeFile(TEXT_FILE_NAME);
|
||||
if (!removeResult.isSuccess()) {
|
||||
logAndThrow(removeResult);
|
||||
}
|
||||
|
||||
super.tearDown();
|
||||
}
|
||||
|
||||
private void logAndThrow(RemoteOperationResult result) throws Exception {
|
||||
Log.e(LOG_TAG, result.getLogMessage(), result.getException());
|
||||
throw new Exception(result.getLogMessage(), result.getException());
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user