Title: [217282] branches/safari-604.1.21-branch/Tools
Revision
217282
Author
ryanhad...@apple.com
Date
2017-05-23 09:35:43 -0700 (Tue, 23 May 2017)

Log Message

Merge r216899. rdar://problem/32352868

Modified Paths

Diff

Modified: branches/safari-604.1.21-branch/Tools/ChangeLog (217281 => 217282)


--- branches/safari-604.1.21-branch/Tools/ChangeLog	2017-05-23 16:30:37 UTC (rev 217281)
+++ branches/safari-604.1.21-branch/Tools/ChangeLog	2017-05-23 16:35:43 UTC (rev 217282)
@@ -1,3 +1,19 @@
+2017-05-23  Ryan Haddad  <ryanhad...@apple.com>
+
+        Merge r216899. rdar://problem/32352868
+
+    2017-05-15  Jonathan Bedard  <jbed...@apple.com>
+
+            webkitpy: Some versions of simctl do not place parenthesis around runtime identifiers
+            https://bugs.webkit.org/show_bug.cgi?id=172142
+
+            Reviewed by Tim Horton.
+
+            * Scripts/webkitpy/xcode/simulator.py:
+            (Simulator._parse_runtimes): Newer versions of simctl output do not put parenthesis
+            around runtime identifiers.
+            * Scripts/webkitpy/xcode/simulator_unittest.py: Add tests for new simctl output.
+
 2017-05-18  Jason Marcell  <jmarc...@apple.com>
 
         Cherry-pick r217074. rdar://problem/32282945

Modified: branches/safari-604.1.21-branch/Tools/Scripts/webkitpy/xcode/simulator.py (217281 => 217282)


--- branches/safari-604.1.21-branch/Tools/Scripts/webkitpy/xcode/simulator.py	2017-05-23 16:30:37 UTC (rev 217281)
+++ branches/safari-604.1.21-branch/Tools/Scripts/webkitpy/xcode/simulator.py	2017-05-23 16:35:43 UTC (rev 217282)
@@ -174,8 +174,8 @@
     device_type_re = re.compile('(?P<name>.+)\((?P<identifier>[^)]+)\)')
     # FIXME: runtime_re parses the version from the runtime name, but that does not contain the full version number
     # (it can omit the revision). We should instead parse the version from the number contained in parentheses.
-    runtime_re = re.compile(
-        '(i|watch|tv)OS (?P<version>\d+\.\d)(?P<internal> Internal)? \(\d+\.\d+(\.\d+)? - (?P<build_version>[^)]+)\) \((?P<identifier>[^)]+)\)( \((?P<availability>[^)]+)\))?')
+    runtime_re = re.compile('(i|watch|tv)OS (?P<version>\d+\.\d)(?P<internal> Internal)? \(\d+\.\d+(\.\d+)? - (?P<build_version>[^)]+)\) \((?P<identifier>[^)]+)\)( \((?P<availability>[^)]+)\))?')
+    new_runtime_re = re.compile('(i|watch|tv)OS (?P<version>\d+\.\d)(?P<internal> Internal)? \(\d+\.\d+(\.\d+)? - (?P<build_version>[^)]+)\) - (?P<identifier>[^)]+)( \((?P<availability>[^)]+)\))?')
     unavailable_version_re = re.compile('-- Unavailable: (?P<identifier>[^ ]+) --')
     version_re = re.compile('-- (i|watch|tv)OS (?P<version>\d+\.\d+)(?P<internal> Internal)? --')
     devices_re = re.compile(
@@ -329,7 +329,7 @@
         :return: None
         """
         for line in lines:
-            runtime_match = self.runtime_re.match(line)
+            runtime_match = self.runtime_re.match(line) or self.new_runtime_re.match(line)
             if not runtime_match:
                 if line != '== Devices ==':
                     raise RuntimeError('Expected == Devices == header but got: "{}"'.format(line))

Modified: branches/safari-604.1.21-branch/Tools/Scripts/webkitpy/xcode/simulator_unittest.py (217281 => 217282)


--- branches/safari-604.1.21-branch/Tools/Scripts/webkitpy/xcode/simulator_unittest.py	2017-05-23 16:30:37 UTC (rev 217281)
+++ branches/safari-604.1.21-branch/Tools/Scripts/webkitpy/xcode/simulator_unittest.py	2017-05-23 16:35:43 UTC (rev 217282)
@@ -56,6 +56,7 @@
 iOS 8.4 (8.4.1 - 12H321) (com.apple.CoreSimulator.SimRuntime.iOS-8-4)
 tvOS 9.0 (9.0 - 13T5347l) (com.apple.CoreSimulator.SimRuntime.tvOS-9-0)
 watchOS 2.0 (2.0 - 13S343) (com.apple.CoreSimulator.SimRuntime.watchOS-2-0)
+iOS 10.0 (10.0 - 14280) - com.apple.CoreSimulator.SimRuntime.iOS-10-0
 == Devices ==
 -- iOS 8.0 --
     iPhone 4s (68D9A792-E3A9-462B-B211-762C6A5D3779) (Shutdown)
@@ -127,7 +128,7 @@
         self.assertEqual('Apple Watch - 42mm', device_type_apple_watch_42mm.name)
         self.assertEqual('com.apple.CoreSimulator.SimDeviceType.Apple-Watch-42mm', device_type_apple_watch_42mm.identifier)
 
-        self.assertEqual(5, len(simulator.runtimes))
+        self.assertEqual(6, len(simulator.runtimes))
 
         runtime_ios_8 = simulator.runtimes[0]
         self.assertEqual('com.apple.CoreSimulator.SimRuntime.iOS-8-0', runtime_ios_8.identifier)
@@ -236,6 +237,13 @@
         self.assertEqual(tuple([2, 0]), runtime_watchos_2.version)
         self.assertEqual(2, len(runtime_watchos_2.devices))
 
+        runtime_ios_10 = simulator.runtimes[5]
+        self.assertEqual('com.apple.CoreSimulator.SimRuntime.iOS-10-0', runtime_ios_10.identifier)
+        self.assertEqual(True, runtime_ios_10.available)
+        self.assertEqual(False, runtime_ios_10.is_internal_runtime)
+        self.assertEqual(tuple([10, 0]), runtime_ios_10.version)
+        self.assertEqual(0, len(runtime_ios_10.devices))
+
         device_apple_watch_38mm = runtime_watchos_2.devices[0]
         self.assertEqual('Apple Watch - 38mm', device_apple_watch_38mm.name)
         self.assertEqual('00138CD2-D30C-4380-A30E-A70B88E1A3C5', device_apple_watch_38mm.udid)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to