1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef SYNC_TEST_FAKE_SERVER_ANDROID_FAKE_SERVER_HELPER_ANDROID
6 #define SYNC_TEST_FAKE_SERVER_ANDROID_FAKE_SERVER_HELPER_ANDROID
10 #include "base/android/scoped_java_ref.h"
11 #include "base/basictypes.h"
12 #include "sync/test/fake_server/entity_builder_factory.h"
14 // Helper for utilizing native FakeServer infrastructure in Android tests.
15 class FakeServerHelperAndroid
{
17 // Registers the native methods.
18 static bool Register(JNIEnv
* env
);
20 // Creates a FakeServerHelperAndroid.
21 FakeServerHelperAndroid(JNIEnv
* env
, jobject obj
);
23 // Factory method for creating a native FakeServer object. The caller assumes
25 jlong
CreateFakeServer(JNIEnv
* env
, jobject obj
);
27 // Factory method for creating a native NetworkResources object. The caller
29 jlong
CreateNetworkResources(JNIEnv
* env
, jobject obj
, jlong fake_server
);
31 // Deletes the given |fake_server| (a FakeServer pointer created via
33 void DeleteFakeServer(JNIEnv
* env
, jobject obj
, jlong fake_server
);
35 // Returns true if and only if |fake_server| contains |count| entities that
36 // match |model_type_string| and |name|.
37 jboolean
VerifyEntityCountByTypeAndName(JNIEnv
* env
,
41 jstring model_type_string
,
44 // Returns true iff |fake_server| has exactly one window of sessions with
45 // tabs matching |url_array|. The order of the array does not matter.
46 jboolean
VerifySessions(JNIEnv
* env
,
49 jobjectArray url_array
);
51 // Injects a UniqueClientEntity into |fake_server|.
52 void InjectUniqueClientEntity(JNIEnv
* env
,
56 jbyteArray serialized_entity_specifics
);
58 // Injects a BookmarkEntity into |fake_server|.
59 void InjectBookmarkEntity(JNIEnv
* env
,
66 // Returns the bookmark bar folder ID.
67 base::android::ScopedJavaLocalRef
<jstring
> GetBookmarkBarFolderId(
72 // Deletes an entity on the server. This is the JNI way of injecting a
74 void DeleteEntity(JNIEnv
* env
,
80 virtual ~FakeServerHelperAndroid();
83 #endif // SYNC_TEST_FAKE_SERVER_ANDROID_FAKE_SERVER_HELPER_ANDROID