This repository has been archived by the owner. It is now read-only.
Permalink
Cannot retrieve contributors at this time
executable file
41 lines (35 sloc)
1.63 KB
| /* This Source Code Form is subject to the terms of the Mozilla Public | |
| * License, v. 2.0. If a copy of the MPL was not distributed with this | |
| * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ | |
| @testable import Client | |
| import Foundation | |
| import Shared | |
| import Storage | |
| import XCTest | |
| class TestBookmarks: ProfileTest { | |
| func testBookmarks() { | |
| withTestProfile { profile -> Void in | |
| for i in 0...10 { | |
| let bookmark = ShareItem(url: "http://www.example.com/\(i)", title: "Example \(i)", favicon: nil) | |
| _ = profile.bookmarks.shareItem(bookmark).value | |
| } | |
| let expectation = self.expectation(description: "asynchronous request") | |
| profile.bookmarks.modelFactory >>== { | |
| guard let model = $0.modelForFolder(BookmarkRoots.MobileFolderGUID).value.successValue else { | |
| XCTFail("Should not have failed to get mock bookmarks.") | |
| expectation.fulfill() | |
| return | |
| } | |
| // 11 bookmarks plus our two suggested sites. | |
| XCTAssertEqual(model.current.count, 11, "We create \(model.current.count) stub bookmarks in the Mobile Bookmarks folder.") | |
| let bookmark = model.current[0] | |
| XCTAssertTrue(bookmark is BookmarkItem) | |
| XCTAssertTrue((bookmark as! BookmarkItem).url.hasPrefix("http://www.example.com/"), "Example URL found.") | |
| expectation.fulfill() | |
| } | |
| self.waitForExpectations(timeout: 15.0, handler:nil) | |
| // This'll do. | |
| try! profile.files.remove("mock.db") | |
| } | |
| } | |
| } |