@@ -7,18 +7,24 @@ import Combine
77final class CountrySelectorViewModelTests : XCTestCase {
88
99 var subscriptions = Set < AnyCancellable > ( )
10+ var binding : Binding < AddressSelectorCommandProtocol ? > !
11+ var viewModel : CountrySelectorViewModel !
1012
1113 override func setUp ( ) {
1214 super. setUp ( )
1315
16+ binding = Binding < AddressSelectorCommandProtocol ? > ( get: { nil } , set: { _ in } )
17+ viewModel = CountrySelectorViewModel ( countries: Self . sampleCountries, selected: binding)
18+ }
19+
20+ override func tearDown( ) {
1421 subscriptions. removeAll ( )
22+ binding = nil
23+ viewModel = nil
24+ super. tearDown ( )
1525 }
1626
1727 func test_filter_countries_return_expected_results( ) {
18- // Given
19- let binding = Binding < AddressSelectorCommandProtocol ? > ( get: { nil } , set: { _ in } )
20- let viewModel = CountrySelectorViewModel ( countries: Self . sampleCountries, selected: binding)
21-
2228 // When
2329 viewModel. searchTerm = " Co "
2430 let countries = viewModel. command. data. map { $0. name }
@@ -41,10 +47,6 @@ final class CountrySelectorViewModelTests: XCTestCase {
4147 }
4248
4349 func test_filter_term_with_last_character_whitespace_return_expected_result( ) {
44- // Given
45- let binding = Binding < AddressSelectorCommandProtocol ? > ( get: { nil } , set: { _ in } )
46- let viewModel = CountrySelectorViewModel ( countries: Self . sampleCountries, selected: binding)
47-
4850 // When
4951 viewModel. searchTerm = " Indonesia "
5052 let countries = viewModel. command. data. map { $0. name }
@@ -56,10 +58,6 @@ final class CountrySelectorViewModelTests: XCTestCase {
5658 }
5759
5860 func test_filter_term_with_last_character_newline_return_expected_result( ) {
59- // Given
60- let binding = Binding < AddressSelectorCommandProtocol ? > ( get: { nil } , set: { _ in } )
61- let viewModel = CountrySelectorViewModel ( countries: Self . sampleCountries, selected: binding)
62-
6361 // When
6462 viewModel. searchTerm = " Indonesia \n "
6563 let countries = viewModel. command. data. map { $0. name }
@@ -71,10 +69,6 @@ final class CountrySelectorViewModelTests: XCTestCase {
7169 }
7270
7371 func test_filter_countries_with_uppercase_letters_return_expected_results( ) {
74- // Given
75- let binding = Binding < AddressSelectorCommandProtocol ? > ( get: { nil } , set: { _ in } )
76- let viewModel = CountrySelectorViewModel ( countries: Self . sampleCountries, selected: binding)
77-
7872 // When
7973 viewModel. searchTerm = " CO "
8074 let countries = viewModel. command. data. map { $0. name }
@@ -98,8 +92,6 @@ final class CountrySelectorViewModelTests: XCTestCase {
9892
9993 func test_cleaning_search_terms_return_all_countries( ) {
10094 // Given
101- let binding = Binding < AddressSelectorCommandProtocol ? > ( get: { nil } , set: { _ in } )
102- let viewModel = CountrySelectorViewModel ( countries: Self . sampleCountries, selected: binding)
10395 let totalNumberOfCountries = viewModel. command. data. count
10496
10597 // When
0 commit comments