blob: a2640df952ed7972771d47c552a49f2ccdf08c6c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
//
// AccessMethodRepositoryStub.swift
// MullvadRESTTests
//
// Created by Mojgan on 2024-01-02.
// Copyright © 2024 Mullvad VPN AB. All rights reserved.
//
import Combine
import MullvadSettings
struct AccessMethodRepositoryStub: AccessMethodRepositoryDataSource {
var directAccess: PersistentAccessMethod
var accessMethodsPublisher: AnyPublisher<[PersistentAccessMethod], Never> {
passthroughSubject.eraseToAnyPublisher()
}
let passthroughSubject: CurrentValueSubject<[PersistentAccessMethod], Never> = CurrentValueSubject([])
init(accessMethods: [PersistentAccessMethod]) {
directAccess = accessMethods.first(where: { $0.kind == .direct })!
passthroughSubject.send(accessMethods)
}
func fetchAll() -> [PersistentAccessMethod] {
passthroughSubject.value
}
func saveLastReachable(_ method: PersistentAccessMethod) {}
func fetchLastReachable() -> PersistentAccessMethod {
directAccess
}
}
|