Mercurial > public > simoleon
annotate SimoleonAppPreview/SimoleonAppPreview.swift @ 144:4271fb5f69e2
Add Scheme for automating App Preview
author | Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com> |
---|---|
date | Tue, 17 Aug 2021 22:15:48 +0100 |
parents | |
children | 23395b98a921 |
rev | line source |
---|---|
144
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
1 // |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
2 // SimoleonAppPreview.swift |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
3 // SimoleonAppPreview |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
4 // |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
5 // Created by Dennis Concepción Martín on 17/8/21. |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
6 // |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
7 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
8 import XCTest |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
9 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
10 class SimoleonAppPreview: XCTestCase { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
11 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
12 override func setUpWithError() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
13 // This method is called before the invocation of each test method in the class. |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
14 if UIDevice.current.userInterfaceIdiom == .pad { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
15 XCUIDevice.shared.orientation = .landscapeLeft |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
16 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
17 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
18 // In UI tests it is usually best to stop immediately when a failure occurs. |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
19 continueAfterFailure = false |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
20 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
21 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
22 override func tearDownWithError() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
23 // This method is called after the invocation of each test method in the class. |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
24 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
25 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
26 func recordInteraction(of app: XCUIApplication) { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
27 app.launch() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
28 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
29 // Write amount in textfield |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
30 app.textFields["ConversionTextField"].tap() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
31 app.keys["4"].tap() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
32 app.keys["5"].tap() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
33 app.keys["0"].tap() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
34 app.keys["0"].tap() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
35 app.keys["0"].tap() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
36 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
37 // Tap done to dismiss keyboard |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
38 app.navigationBars.buttons.element(boundBy: 0).tap() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
39 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
40 // Open currency selector and select USD/BTC |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
41 app.scrollViews.buttons["OpenCurrencySelector"].tap() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
42 let currencySearchBar = app.textFields["CurrencySearchBar"] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
43 currencySearchBar.tap() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
44 currencySearchBar.typeText("Usd/btc\n") |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
45 sleep(1) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
46 app.tables.buttons.firstMatch.tap() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
47 sleep(2) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
48 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
49 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
50 func testUSEnglish() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
51 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
52 app.launchArguments += ["-AppleLanguages", "(en-US)"] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
53 app.launchArguments += ["-AppleLocale", "\"en-US\""] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
54 recordInteraction(of: app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
55 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
56 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
57 func testSpanish() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
58 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
59 app.launchArguments += ["-AppleLanguages", "(es-ES)"] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
60 app.launchArguments += ["-AppleLocale", "\"es-ES\""] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
61 recordInteraction(of: app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
62 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
63 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
64 func testGBEnglish() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
65 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
66 app.launchArguments += ["-AppleLanguages", "(en-GB)"] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
67 app.launchArguments += ["-AppleLocale", "\"en-GB\""] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
68 recordInteraction(of: app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
69 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
70 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
71 func testGerman() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
72 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
73 app.launchArguments += ["-AppleLanguages", "(de-DE)"] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
74 app.launchArguments += ["-AppleLocale", "\"de-DE\""] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
75 recordInteraction(of: app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
76 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
77 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
78 func testFrench() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
79 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
80 app.launchArguments += ["-AppleLanguages", "(fr-FR)"] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
81 app.launchArguments += ["-AppleLocale", "\"fr-FR\""] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
82 recordInteraction(of: app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
83 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
84 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
85 func testPortuguese() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
86 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
87 app.launchArguments += ["-AppleLanguages", "(pt-PT)"] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
88 app.launchArguments += ["-AppleLocale", "\"pt-PT\""] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
89 recordInteraction(of: app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
90 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
91 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
92 func testDutch() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
93 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
94 app.launchArguments += ["-AppleLanguages", "(nl-NL)"] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
95 app.launchArguments += ["-AppleLocale", "\"nl-NL\""] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
96 recordInteraction(of: app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
97 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
98 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
99 func testItalian() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
100 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
101 app.launchArguments += ["-AppleLanguages", "(it-IT)"] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
102 app.launchArguments += ["-AppleLocale", "\"it-IT\""] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
103 recordInteraction(of: app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
104 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
105 |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
106 func testRussian() throws { |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
107 let app = XCUIApplication() |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
108 app.launchArguments += ["-AppleLanguages", "(ru-RU)"] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
109 app.launchArguments += ["-AppleLocale", "\"ru-RU\""] |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
110 recordInteraction(of: app) |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
111 } |
4271fb5f69e2
Add Scheme for automating App Preview
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
112 } |