1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
|
# frozen_string_literal: true
require "test_helper"
class IosTest < Minitest::Test
test "detects iphone" do
browser = Browser.new(Browser["IPHONE"])
assert_equal "Safari", browser.name
assert browser.safari?
assert browser.webkit?
assert browser.platform.ios?
refute browser.platform.mac?
assert_equal "3.0", browser.full_version
assert_equal "3", browser.version
end
test "detects safari" do
browser = Browser.new(Browser["SAFARI"])
assert_equal "Safari", browser.name
assert browser.safari?
assert browser.webkit?
assert_equal "5.0.1", browser.full_version
assert_equal "5", browser.version
end
test "detects safari in webapp mode" do
browser = Browser.new(Browser["SAFARI_IPAD_WEBAPP_MODE"])
refute browser.safari?
assert browser.platform.ios_webview?
browser = Browser.new(Browser["SAFARI_IPHONE_WEBAPP_MODE"])
refute browser.safari?
assert browser.platform.ios_webview?
end
test "detects ipod" do
browser = Browser.new(Browser["IPOD"])
assert_equal "Safari", browser.name
assert browser.safari?
assert browser.webkit?
assert browser.platform.ios?
refute browser.device.tablet?
refute browser.platform.mac?
assert_equal "3.0", browser.full_version
assert_equal "3", browser.version
end
test "detects ipad" do
browser = Browser.new(Browser["IPAD"])
assert_equal "Safari", browser.name
assert browser.safari?
assert browser.webkit?
assert browser.platform.ios?
refute browser.platform.mac?
assert_equal "4.0.4", browser.full_version
assert_equal "4", browser.version
end
test "detects ios4" do
browser = Browser.new(Browser["IOS4"])
assert browser.platform.ios?
assert browser.platform.ios?(4)
refute browser.platform.mac?
end
test "detects ios5" do
browser = Browser.new(Browser["IOS5"])
assert browser.platform.ios?
assert browser.platform.ios?(5)
refute browser.platform.mac?
end
test "detects ios6" do
browser = Browser.new(Browser["IOS6"])
assert browser.platform.ios?
assert browser.platform.ios?(6)
refute browser.platform.mac?
end
test "detects ios7" do
browser = Browser.new(Browser["IOS7"])
assert browser.platform.ios?
assert browser.platform.ios?(7)
refute browser.platform.mac?
end
test "detects ios8" do
browser = Browser.new(Browser["IOS8"])
assert browser.platform.ios?
assert browser.platform.ios?(8)
refute browser.platform.mac?
end
test "detects ios9" do
browser = Browser.new(Browser["IOS9"])
assert browser.platform.ios?
assert browser.platform.ios?(9)
refute browser.platform.mac?
end
test "detects ios12" do
browser = Browser.new(Browser["IOS12"])
assert browser.platform.ios?
assert browser.platform.ios?(12)
refute browser.platform.mac?
end
test "don't detect as two different versions" do
browser = Browser.new(Browser["IOS8"])
assert browser.platform.ios?(8)
refute browser.platform.ios?(7)
end
test "returns string representation for iphone" do
browser = Browser.new(Browser["IPHONE"])
meta = browser.to_s
assert meta.include?("webkit")
assert meta.include?("ios")
assert meta.include?("safari")
assert meta.include?("safari3")
assert meta.include?("mobile")
refute meta.include?("tablet")
end
test "returns string representation for ipad" do
browser = Browser.new(Browser["IPAD"])
meta = browser.to_s
assert meta.include?("webkit")
assert meta.include?("ios")
assert meta.include?("safari")
assert meta.include?("tablet")
refute meta.include?("mobile")
end
end
|