mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-08-21 03:43:16 +09:00
47 lines
1.7 KiB
Swift
47 lines
1.7 KiB
Swift
/* 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/. */
|
|
|
|
import Foundation
|
|
import MobileCoreServices
|
|
import UIKit
|
|
import XCTest
|
|
|
|
class UIPasteboardExtensionsTests: XCTestCase {
|
|
|
|
fileprivate var pasteboard: UIPasteboard!
|
|
|
|
override func setUp() {
|
|
super.setUp()
|
|
pasteboard = UIPasteboard.withUniqueName()
|
|
}
|
|
|
|
override func tearDown() {
|
|
super.tearDown()
|
|
UIPasteboard.remove(withName: pasteboard.name)
|
|
}
|
|
|
|
func testAddPNGImage() {
|
|
let path = Bundle(for: self.classForCoder).path(forResource: "image", ofType: "png")!
|
|
let data = try! Data(contentsOf: URL(fileURLWithPath: path))
|
|
let url = URL(string: "http://foo.bar")!
|
|
pasteboard.addImageWithData(data, forURL: url)
|
|
verifyPasteboard(expectedURL: url, expectedImageTypeKey: kUTTypePNG)
|
|
}
|
|
|
|
func testAddGIFImage() {
|
|
let path = Bundle(for: self.classForCoder).path(forResource: "image", ofType: "gif")!
|
|
let data = try! Data(contentsOf: URL(fileURLWithPath: path))
|
|
let url = URL(string: "http://foo.bar")!
|
|
pasteboard.addImageWithData(data, forURL: url)
|
|
verifyPasteboard(expectedURL: url, expectedImageTypeKey: kUTTypeGIF)
|
|
}
|
|
|
|
fileprivate func verifyPasteboard(expectedURL: URL, expectedImageTypeKey: CFString) {
|
|
XCTAssertEqual(pasteboard.items.count, 1)
|
|
XCTAssertEqual(pasteboard.items[0].count, 2)
|
|
XCTAssertEqual(pasteboard.items[0][kUTTypeURL as String] as? URL, expectedURL)
|
|
XCTAssertNotNil(pasteboard.items[0][expectedImageTypeKey as String])
|
|
}
|
|
|
|
}
|