Mercurial > public > simoleon
annotate SimoleonTests/SimoleonTests.swift @ 153:2590ee472aa9
Add test to check currency existence
author | Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com> |
---|---|
date | Mon, 23 Aug 2021 17:14:47 +0100 |
parents | bdedd0cc6cd1 |
children | 8afba86ab8dd |
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 // SimoleonTests.swift |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
3 // SimoleonTests |
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 @testable import Simoleon |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
10 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
11 class SimoleonTests: XCTestCase { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
12 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
13 override func setUpWithError() throws { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
14 // Put setup code here. This method is called before the invocation of each test method in the class. |
153
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
15 continueAfterFailure = false |
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
16 } |
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 override func tearDownWithError() throws { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
19 // 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
|
20 } |
151
bdedd0cc6cd1
Add test flag existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
120
diff
changeset
|
21 |
bdedd0cc6cd1
Add test flag existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
120
diff
changeset
|
22 func testReadJson() throws { |
153
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
23 let currencyPairsSupported: [String]? = try? read(json: "CurrencyPairsSupported.json") |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
24 XCTAssertNotNil(currencyPairsSupported, "An error occurred while reading CurrencyPairsSupported.json") |
151
bdedd0cc6cd1
Add test flag existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
120
diff
changeset
|
25 |
153
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
26 let currencyDetails: [String: CurrencyDetailsModel]? = try? read(json: "CurrencyDetails.json") |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
27 XCTAssertNotNil(currencyDetails, "An error occurred while reading CurrencyDetails.json") |
151
bdedd0cc6cd1
Add test flag existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
120
diff
changeset
|
28 } |
bdedd0cc6cd1
Add test flag existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
120
diff
changeset
|
29 |
153
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
30 func testCurrencyExistence() throws { |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
31 let currencyDetails: [String: CurrencyDetailsModel] = try! read(json: "CurrencyDetails.json") |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
32 |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
33 // Remove duplicates from currency pairs supported |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
34 let currencyPairsSupported: [String] = try! read(json: "CurrencyPairsSupported.json") |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
35 var currenciesSupported = Set<String>() |
151
bdedd0cc6cd1
Add test flag existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
120
diff
changeset
|
36 |
153
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
37 for currencyPairSupported in currencyPairsSupported { |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
38 let symbols = currencyPairSupported.components(separatedBy: "/") |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
39 for symbol in symbols { |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
40 currenciesSupported.insert(symbol) |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
41 XCTAssertNotNil(currencyDetails[symbol], "Currency details of symbol: \(symbol) can't be found") |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
42 XCTAssertTrue((UIImage(named: currencyDetails[symbol]!.flag) != nil), "Flag of symbol: \(symbol) can't be found") |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
43 } |
151
bdedd0cc6cd1
Add test flag existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
120
diff
changeset
|
44 } |
153
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
45 |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
46 // Check if there are same number of currencies |
2590ee472aa9
Add test to check currency existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
151
diff
changeset
|
47 XCTAssertEqual(currencyDetails.keys.count, currenciesSupported.count) |
151
bdedd0cc6cd1
Add test flag existence
Dennis Concepcion Martin <dennisconcepcionmartin@gmail.com>
parents:
120
diff
changeset
|
48 } |
0
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
49 |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
50 func testPerformanceExample() throws { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
51 // This is an example of a performance test case. |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
52 self.measure { |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
53 // Put the code you want to measure the time of here. |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
54 } |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
55 } |
e0c2bda6c51f
first commit
Dennis Concepción Martín <dennisconcepcionmartin@gmail.com>
parents:
diff
changeset
|
56 } |