Commit e636eab5 authored by miguelg's avatar miguelg Committed by Commit bot

Revert of Create a Android Sync integration test for typed URLs (patchset #4...

Revert of Create a Android Sync integration test for typed URLs (patchset #4 id:140001 of https://codereview.chromium.org/862113005/)

Reason for revert:
This is breaking building chrome/android:chrome_sync_shell_test_apk
with gn due to a dependency to the autogenerated enum org.chromium.ui.base.PageTransition;

I am not sure why no bots failed when landing it (we don't seem to have gn builder upstream for android?) but reverting it locally makes it build again.

To repro: Reapply the patch and run
gn gen out/Release  --args='is_debug=false os="android" cpu_arch="arm" use_goma=true goma_dir="/usr/local/google/clank/goma/goma"'

ninja -C out/Release -j 200  chrome/android:chrome_sync_shell_test_apk

Original issue's description:
> Create a Android Sync integration test for typed URLs
>
> This CL introduces JNI plumbing for one method of the FakeServer's
> verification API. One test (testUploadTypedUrl) has been added to use
> the API; it types a URL on the client and verifies that the URL was
> sent to the server.
>
> BUG=NONE
>
> Committed: https://crrev.com/cba424b9309c8c75d0a3797b9b228f7ef11425e4
> Cr-Commit-Position: refs/heads/master@{#313824}

TBR=nyquist@chromium.org,maxbogue@chromium.org,zea@chromium.org,pvalenzuela@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=NONE

Review URL: https://codereview.chromium.org/881753003

Cr-Commit-Position: refs/heads/master@{#313898}
parent 72a49c1e
...@@ -7,7 +7,7 @@ package org.chromium.chrome.browser.sync; ...@@ -7,7 +7,7 @@ package org.chromium.chrome.browser.sync;
import android.content.Context; import android.content.Context;
import org.chromium.base.ThreadUtils; import org.chromium.base.ThreadUtils;
import org.chromium.sync.internal_api.pub.base.ModelType; //import org.chromium.chrome.browser.sync.ProfileSyncService;
import java.util.concurrent.Callable; import java.util.concurrent.Callable;
...@@ -113,25 +113,6 @@ public class FakeServerHelper { ...@@ -113,25 +113,6 @@ public class FakeServerHelper {
nativeDeleteFakeServer(mNativeFakeServerHelperAndroid, nativeFakeServer); nativeDeleteFakeServer(mNativeFakeServerHelperAndroid, nativeFakeServer);
} }
/**
* Returns whether {@code count} entities exist on the fake Sync server with the given
* {@code modelType} and {@code name}.
*
* @param count the number of fake server entities to verify
* @param modelType the model type of entities to verify
* @param name the name of entities to verify
*
* @return whether the number of specified entities exist
*/
public boolean verifyEntityCountByTypeAndName(int count, ModelType modelType, String name) {
if (sNativeFakeServer == 0L) {
throw new IllegalStateException(
"useFakeServer must be called before data verification.");
}
return nativeVerifyEntityCountByTypeAndName(mNativeFakeServerHelperAndroid,
sNativeFakeServer, count, modelType.toString(), name);
}
// Native methods. // Native methods.
private native long nativeInit(); private native long nativeInit();
private native long nativeCreateFakeServer(long nativeFakeServerHelperAndroid); private native long nativeCreateFakeServer(long nativeFakeServerHelperAndroid);
...@@ -139,7 +120,4 @@ public class FakeServerHelper { ...@@ -139,7 +120,4 @@ public class FakeServerHelper {
long nativeFakeServerHelperAndroid, long nativeFakeServer); long nativeFakeServerHelperAndroid, long nativeFakeServer);
private native void nativeDeleteFakeServer( private native void nativeDeleteFakeServer(
long nativeFakeServerHelperAndroid, long nativeFakeServer); long nativeFakeServerHelperAndroid, long nativeFakeServer);
private native boolean nativeVerifyEntityCountByTypeAndName(
long nativeFakeServerHelperAndroid, long nativeFakeServer, int count, String modelType,
String name);
} }
...@@ -23,14 +23,11 @@ import org.chromium.content.browser.ContentViewCore; ...@@ -23,14 +23,11 @@ import org.chromium.content.browser.ContentViewCore;
import org.chromium.content.browser.test.util.Criteria; import org.chromium.content.browser.test.util.Criteria;
import org.chromium.content.browser.test.util.CriteriaHelper; import org.chromium.content.browser.test.util.CriteriaHelper;
import org.chromium.content.browser.test.util.JavaScriptUtils; import org.chromium.content.browser.test.util.JavaScriptUtils;
import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.sync.AndroidSyncSettings; import org.chromium.sync.AndroidSyncSettings;
import org.chromium.sync.internal_api.pub.base.ModelType;
import org.chromium.sync.signin.AccountManagerHelper; import org.chromium.sync.signin.AccountManagerHelper;
import org.chromium.sync.signin.ChromeSigninController; import org.chromium.sync.signin.ChromeSigninController;
import org.chromium.sync.test.util.MockAccountManager; import org.chromium.sync.test.util.MockAccountManager;
import org.chromium.sync.test.util.MockSyncContentResolverDelegate; import org.chromium.sync.test.util.MockSyncContentResolverDelegate;
import org.chromium.ui.base.PageTransition;
import java.util.concurrent.TimeoutException; import java.util.concurrent.TimeoutException;
...@@ -46,7 +43,6 @@ public class SyncTest extends ChromeShellTestBase { ...@@ -46,7 +43,6 @@ public class SyncTest extends ChromeShellTestBase {
private SyncTestUtil.SyncTestContext mContext; private SyncTestUtil.SyncTestContext mContext;
private MockAccountManager mAccountManager; private MockAccountManager mAccountManager;
private SyncController mSyncController; private SyncController mSyncController;
private FakeServerHelper mFakeServerHelper;
@Override @Override
protected void setUp() throws Exception { protected void setUp() throws Exception {
...@@ -70,7 +66,6 @@ public class SyncTest extends ChromeShellTestBase { ...@@ -70,7 +66,6 @@ public class SyncTest extends ChromeShellTestBase {
@Override @Override
public void run() { public void run() {
mSyncController = SyncController.get(mContext); mSyncController = SyncController.get(mContext);
mFakeServerHelper = FakeServerHelper.get();
} }
}); });
FakeServerHelper.useFakeServer(getInstrumentation().getTargetContext()); FakeServerHelper.useFakeServer(getInstrumentation().getTargetContext());
...@@ -186,39 +181,6 @@ public class SyncTest extends ChromeShellTestBase { ...@@ -186,39 +181,6 @@ public class SyncTest extends ChromeShellTestBase {
SyncTestUtil.verifySignedInWithAccount(mContext, account); SyncTestUtil.verifySignedInWithAccount(mContext, account);
} }
@LargeTest
@Feature({"Sync"})
public void testUploadTypedUrl() throws Exception {
setupTestAccountAndSignInToSync(FOREIGN_SESSION_TEST_MACHINE_ID);
// TestHttpServerClient is preferred here but it can't be used. The test server
// serves pages on localhost and Chrome doesn't sync localhost URLs as typed URLs.
// This type of URL requires no external data connection or resources.
final String urlToLoad = "data:text,testTypedUrl";
assertTrue("A typed URL entity for " + urlToLoad + " already exists on the fake server.",
mFakeServerHelper.verifyEntityCountByTypeAndName(0, ModelType.TYPED_URL,
urlToLoad));
ThreadUtils.runOnUiThreadBlocking(new Runnable() {
@Override
public void run() {
LoadUrlParams params = new LoadUrlParams(urlToLoad, PageTransition.TYPED);
getActivity().getActiveTab().loadUrl(params);
}
});
boolean synced = CriteriaHelper.pollForCriteria(new Criteria() {
@Override
public boolean isSatisfied() {
return mFakeServerHelper.verifyEntityCountByTypeAndName(1, ModelType.TYPED_URL,
urlToLoad);
}
}, SyncTestUtil.UI_TIMEOUT_MS, SyncTestUtil.CHECK_INTERVAL_MS);
assertTrue("The typed URL entity for " + urlToLoad + " was not found on the fake server.",
synced);
}
private void setupTestAccountAndSignInToSync( private void setupTestAccountAndSignInToSync(
final String syncClientIdentifier) final String syncClientIdentifier)
throws InterruptedException { throws InterruptedException {
......
...@@ -804,7 +804,6 @@ if (is_android) { ...@@ -804,7 +804,6 @@ if (is_android) {
":fake_server_jni", ":fake_server_jni",
":test_support_sync_fake_server", ":test_support_sync_fake_server",
"//base", "//base",
"//testing/gtest",
] ]
} }
} }
...@@ -475,7 +475,6 @@ ...@@ -475,7 +475,6 @@
'dependencies': [ 'dependencies': [
'sync_fake_server_jni_headers', 'sync_fake_server_jni_headers',
'test_support_sync_fake_server', 'test_support_sync_fake_server',
'../testing/gtest.gyp:gtest',
'../base/base.gyp:base', '../base/base.gyp:base',
], ],
'sources': [ 'sources': [
......
...@@ -6,17 +6,11 @@ ...@@ -6,17 +6,11 @@
#include <jni.h> #include <jni.h>
#include "base/android/jni_string.h"
#include "base/basictypes.h" #include "base/basictypes.h"
#include "base/logging.h"
#include "base/memory/scoped_ptr.h"
#include "jni/FakeServerHelper_jni.h" #include "jni/FakeServerHelper_jni.h"
#include "sync/internal_api/public/base/model_type.h"
#include "sync/internal_api/public/network_resources.h" #include "sync/internal_api/public/network_resources.h"
#include "sync/test/fake_server/fake_server.h" #include "sync/test/fake_server/fake_server.h"
#include "sync/test/fake_server/fake_server_network_resources.h" #include "sync/test/fake_server/fake_server_network_resources.h"
#include "sync/test/fake_server/fake_server_verifier.h"
#include "testing/gtest/include/gtest/gtest.h"
FakeServerHelperAndroid::FakeServerHelperAndroid(JNIEnv* env, jobject obj) { FakeServerHelperAndroid::FakeServerHelperAndroid(JNIEnv* env, jobject obj) {
} }
...@@ -52,32 +46,6 @@ void FakeServerHelperAndroid::DeleteFakeServer(JNIEnv* env, ...@@ -52,32 +46,6 @@ void FakeServerHelperAndroid::DeleteFakeServer(JNIEnv* env,
delete fake_server_ptr; delete fake_server_ptr;
} }
jboolean FakeServerHelperAndroid::VerifyEntityCountByTypeAndName(
JNIEnv* env,
jobject obj,
jlong fake_server,
jlong count,
jstring model_type_string,
jstring name) {
syncer::ModelType model_type;
if (!NotificationTypeToRealModelType(base::android::ConvertJavaStringToUTF8(
env, model_type_string), &model_type)) {
LOG(WARNING) << "Invalid ModelType string.";
return false;
}
fake_server::FakeServer* fake_server_ptr =
reinterpret_cast<fake_server::FakeServer*>(fake_server);
fake_server::FakeServerVerifier fake_server_verifier(fake_server_ptr);
testing::AssertionResult result =
fake_server_verifier.VerifyEntityCountByTypeAndName(
count, model_type, base::android::ConvertJavaStringToUTF8(env, name));
if (!result)
LOG(WARNING) << result.message();
return result;
}
// static // static
bool FakeServerHelperAndroid::Register(JNIEnv* env) { bool FakeServerHelperAndroid::Register(JNIEnv* env) {
return RegisterNativesImpl(env); return RegisterNativesImpl(env);
......
...@@ -30,15 +30,6 @@ class FakeServerHelperAndroid { ...@@ -30,15 +30,6 @@ class FakeServerHelperAndroid {
// CreateFakeServer). // CreateFakeServer).
void DeleteFakeServer(JNIEnv* env, jobject obj, jlong fake_server); void DeleteFakeServer(JNIEnv* env, jobject obj, jlong fake_server);
// Returns true if and only if |fake_server| contains |count| entities that
// match |model_type_string| and |name|.
jboolean VerifyEntityCountByTypeAndName(JNIEnv* env,
jobject obj,
jlong fake_server,
jlong count,
jstring model_type_string,
jstring name);
private: private:
virtual ~FakeServerHelperAndroid(); virtual ~FakeServerHelperAndroid();
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment