Mercurial > public > simoleon
annotate SimoleonUITests/SimoleonUITests.swift @ 44:415d51d6923f
Adding tests
author | Dennis Concepción Martín <dennisconcepcionmartin@gmail.com> |
---|---|
date | Mon, 26 Jul 2021 17:36:09 +0100 |
parents | e0c2bda6c51f |
children | 1c7687d30373 |
rev | line source |
---|---|
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
1 // |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
2 // SimoleonUITests.swift |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
3 // SimoleonUITests |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
4 // |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
5 // Created by Dennis Concepción Martín on 08/07/2021. |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
6 // |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
7 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
8 import XCTest |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
9 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
10 class SimoleonUITests: XCTestCase { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
11 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
12 override func setUpWithError() throws { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
13 // Put setup code here. This method is called before the invocation of each test method in the class. |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
14 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
15 // In UI tests it is usually best to stop immediately when a failure occurs. |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
16 continueAfterFailure = false |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
17 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
18 // In UI tests it’s important to set the initial state - such as interface orientation - required for your tests before they run. The setUp method is a good place to do this. |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
19 } |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
20 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
21 override func tearDownWithError() throws { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
22 // Put teardown code here. This method is called after the invocation of each test method in the class. |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
23 } |
44
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
24 |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
25 // MARK: - Tab View |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
26 func testTabBarButtons() { |
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
27 let app = XCUIApplication() |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
28 app.launch() |
44
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
29 |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
30 app.tabBars.buttons["Favourites"].tap() |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
31 XCTAssertTrue(app.navigationBars["Favourites"].exists) |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
32 |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
33 app.tabBars.buttons["Settings"].tap() |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
34 XCTAssertTrue(app.navigationBars["Settings"].exists) |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
35 |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
36 app.tabBars.buttons["Convert"].tap() |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
37 XCTAssertTrue(app.navigationBars["Convert"].exists) |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
38 } |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
39 |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
40 // MARK: - Conversion View |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
41 func testCurrencySelector() { |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
42 let app = XCUIApplication() |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
43 app.launch() |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
44 |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
45 let currencySelectorButton = app.buttons["CurrencySelector"] |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
46 currencySelectorButton.tap() |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
47 |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
48 let searchBar = app.textFields["SearchBar"] |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
49 searchBar.typeText("BTC/USD") |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
50 |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
51 let currencyRowButton = app.buttons["CurrencyRowButton"].firstMatch |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
52 let currencyRowButtonLabel = currencyRowButton.label |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
53 currencyRowButton.tap() |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
54 |
415d51d6923f
Adding tests
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
0
diff
changeset
|
55 XCTAssertTrue(currencyRowButtonLabel == currencySelectorButton.label) |
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
56 } |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
57 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
58 func testLaunchPerformance() throws { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
59 if #available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 7.0, *) { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
60 // This measures how long it takes to launch your application. |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
61 measure(metrics: [XCTApplicationLaunchMetric()]) { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
62 XCUIApplication().launch() |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
63 } |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
64 } |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
65 } |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
66 } |