Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(197)

Unified Diff: chrome/browser/android/bookmarks/bookmarks_bridge.cc

Issue 550543003: Add Instrumental Test for BookmarksBridge (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/android/bookmarks/bookmarks_bridge.cc
diff --git a/chrome/browser/android/bookmarks/bookmarks_bridge.cc b/chrome/browser/android/bookmarks/bookmarks_bridge.cc
index 55fa1ac0bbc97fa6f560bd4a4b005a59be4c554d..aaa814e468a68cbf0e024432f6f3d91e38aa6651 100644
--- a/chrome/browser/android/bookmarks/bookmarks_bridge.cc
+++ b/chrome/browser/android/bookmarks/bookmarks_bridge.cc
@@ -146,6 +146,14 @@ static jboolean IsEditBookmarksEnabled(JNIEnv* env, jclass clazz) {
return IsEditBookmarksEnabled();
}
+void BookmarksBridge::LoadEmptyPartnerBookmarkShimForTesting(JNIEnv* env,
+ jobject obj) {
+ if (partner_bookmarks_shim_->IsLoaded()) return;
+ partner_bookmarks_shim_->SetPartnerBookmarksRoot(
+ new BookmarkPermanentNode(0));
+ DCHECK(partner_bookmarks_shim_->IsLoaded());
+}
+
ScopedJavaLocalRef<jobject> BookmarksBridge::GetBookmarkByID(JNIEnv* env,
jobject obj,
jlong id,
@@ -363,6 +371,24 @@ ScopedJavaLocalRef<jobject> BookmarksBridge::GetMobileFolderId(JNIEnv* env,
return folder_id_obj;
}
+ScopedJavaLocalRef<jobject> BookmarksBridge::GetOtherFolderId(JNIEnv* env,
+ jobject obj) {
+ const BookmarkNode* otherNode = bookmark_model_->other_node();
+ ScopedJavaLocalRef<jobject> folder_id_obj =
+ Java_BookmarksBridge_createBookmarkId(
+ env, otherNode->id(), GetBookmarkType(otherNode));
+ return folder_id_obj;
+}
+
+ScopedJavaLocalRef<jobject> BookmarksBridge::GetDesktopFolderId(JNIEnv* env,
+ jobject obj) {
+ const BookmarkNode* desktopNode = bookmark_model_->bookmark_bar_node();
+ ScopedJavaLocalRef<jobject> folder_id_obj =
+ Java_BookmarksBridge_createBookmarkId(
+ env, desktopNode->id(), GetBookmarkType(desktopNode));
+ return folder_id_obj;
+}
+
void BookmarksBridge::GetChildIDs(JNIEnv* env,
jobject obj,
jlong id,
@@ -550,6 +576,27 @@ void BookmarksBridge::GetCurrentFolderHierarchy(JNIEnv* env,
env, j_callback_obj, j_folder_id_obj, j_result_obj);
}
+ScopedJavaLocalRef<jobject> BookmarksBridge::AddFolder(JNIEnv* env,
+ jobject obj,
+ jobject j_parent_id_obj,
+ jint index,
+ jstring j_title) {
+ DCHECK(IsLoaded());
+ long bookmark_id = JavaBookmarkIdGetId(env, j_parent_id_obj);
+ int type = JavaBookmarkIdGetType(env, j_parent_id_obj);
+ const BookmarkNode* parent = GetNodeByID(bookmark_id, type);
+ if (type != BookmarkType::NORMAL) {
+ NOTREACHED();
+ return ScopedJavaLocalRef<jobject>();
+ }
+ const BookmarkNode* newNode = bookmark_model_->AddFolder(
+ parent, index, base::android::ConvertJavaStringToUTF16(env, j_title));
+ ScopedJavaLocalRef<jobject> new_java_obj =
+ Java_BookmarksBridge_createBookmarkId(
+ env, newNode->id(), GetBookmarkType(newNode));
+ return new_java_obj;
+}
+
void BookmarksBridge::DeleteBookmark(JNIEnv* env,
jobject obj,
jobject j_bookmark_id_obj) {
@@ -593,6 +640,32 @@ void BookmarksBridge::MoveBookmark(JNIEnv* env,
bookmark_model_->Move(node, new_parent_node, index);
}
+ScopedJavaLocalRef<jobject> BookmarksBridge::AddBookmark(
+ JNIEnv* env,
+ jobject obj,
+ jobject j_parent_id_obj,
+ jint index,
+ jstring j_title,
+ jstring j_url) {
+ DCHECK(IsLoaded());
+ long bookmark_id = JavaBookmarkIdGetId(env, j_parent_id_obj);
+ int type = JavaBookmarkIdGetType(env, j_parent_id_obj);
+ const BookmarkNode* parent = GetNodeByID(bookmark_id, type);
+ if (type != BookmarkType::NORMAL) {
+ NOTREACHED();
+ return ScopedJavaLocalRef<jobject>();
+ }
+ const BookmarkNode* newNode = bookmark_model_->AddURL(
+ parent,
+ index,
+ base::android::ConvertJavaStringToUTF16(env, j_title),
+ GURL(base::android::ConvertJavaStringToUTF16(env, j_url)));
+ ScopedJavaLocalRef<jobject> new_java_obj =
+ Java_BookmarksBridge_createBookmarkId(
+ env, newNode->id(), GetBookmarkType(newNode));
+ return new_java_obj;
+}
+
ScopedJavaLocalRef<jobject> BookmarksBridge::CreateJavaBookmark(
const BookmarkNode* node) {
JNIEnv* env = AttachCurrentThread();

Powered by Google App Engine
This is Rietveld 408576698