Renamed userSession and userSessionInfo to session

This commit is contained in:
Aleksandrs Proskurins
2022-09-27 13:57:54 +03:00
parent adf0aaf9b5
commit e0caf5980e
17 changed files with 82 additions and 77 deletions
@@ -18,7 +18,7 @@ import CommonKit
import SwiftUI
struct UserSessionDetailsCoordinatorParameters {
let userSessionInfo: UserSessionInfo
let session: UserSessionInfo
}
final class UserSessionDetailsCoordinator: Coordinator, Presentable {
@@ -40,7 +40,7 @@ final class UserSessionDetailsCoordinator: Coordinator, Presentable {
init(parameters: UserSessionDetailsCoordinatorParameters) {
self.parameters = parameters
let viewModel = UserSessionDetailsViewModel(userSessionInfo: parameters.userSessionInfo)
let viewModel = UserSessionDetailsViewModel(session: parameters.session)
let view = UserSessionDetails(viewModel: viewModel.context)
userSessionDetailsViewModel = viewModel
userSessionDetailsHostingController = VectorHostingController(rootView: view)
@@ -38,29 +38,29 @@ enum MockUserSessionDetailsScreenState: MockScreenState, CaseIterable {
/// Generate the view struct for the screen state.
var screenView: ([Any], AnyView) {
let currentSessionInfo: UserSessionInfo
let session: UserSessionInfo
switch self {
case .allSections:
currentSessionInfo = UserSessionInfo(sessionId: "session",
sessionName: "iOS",
deviceType: .mobile,
isVerified: false,
lastSeenIP: "10.0.0.10",
lastSeenTimestamp: Date().timeIntervalSince1970 - 100)
session = UserSessionInfo(sessionId: "session",
sessionName: "iOS",
deviceType: .mobile,
isVerified: false,
lastSeenIP: "10.0.0.10",
lastSeenTimestamp: Date().timeIntervalSince1970 - 100)
case .sessionSectionOnly:
currentSessionInfo = UserSessionInfo(sessionId: "session",
sessionName: "iOS",
deviceType: .mobile,
isVerified: false,
lastSeenIP: nil,
lastSeenTimestamp: Date().timeIntervalSince1970 - 100)
session = UserSessionInfo(sessionId: "session",
sessionName: "iOS",
deviceType: .mobile,
isVerified: false,
lastSeenIP: nil,
lastSeenTimestamp: Date().timeIntervalSince1970 - 100)
}
let viewModel = UserSessionDetailsViewModel(userSessionInfo: currentSessionInfo)
let viewModel = UserSessionDetailsViewModel(session: session)
// can simulate service and viewModel actions here if needs be.
return (
[currentSessionInfo],
[session],
AnyView(UserSessionDetails(viewModel: viewModel.context))
)
}
@@ -32,7 +32,7 @@ class UserSessionDetailsViewModelTests: XCTestCase {
footer: VectorL10n.userSessionDetailsSessionSectionFooter,
items: sessionItems))
let expectedModel = UserSessionDetailsViewState(sections: sections)
let sut = UserSessionDetailsViewModel(userSessionInfo: userSessionInfo)
let sut = UserSessionDetailsViewModel(session: userSessionInfo)
XCTAssertEqual(sut.state, expectedModel)
}
@@ -52,7 +52,7 @@ class UserSessionDetailsViewModelTests: XCTestCase {
items: sessionItems))
let expectedModel = UserSessionDetailsViewState(sections: sections)
let sut = UserSessionDetailsViewModel(userSessionInfo: userSessionInfo)
let sut = UserSessionDetailsViewModel(session: userSessionInfo)
XCTAssertEqual(sut.state, expectedModel)
}
@@ -79,7 +79,7 @@ class UserSessionDetailsViewModelTests: XCTestCase {
items: deviceSectionItems))
let expectedModel = UserSessionDetailsViewState(sections: sections)
let sut = UserSessionDetailsViewModel(userSessionInfo: userSessionInfo)
let sut = UserSessionDetailsViewModel(session: userSessionInfo)
XCTAssertEqual(sut.state, expectedModel)
}
@@ -21,46 +21,46 @@ typealias UserSessionDetailsViewModelType = StateStoreViewModel<UserSessionDetai
class UserSessionDetailsViewModel: UserSessionDetailsViewModelType, UserSessionDetailsViewModelProtocol {
var completion: ((UserSessionDetailsViewModelResult) -> Void)?
init(userSessionInfo: UserSessionInfo) {
init(session: UserSessionInfo) {
super.init(initialViewState: UserSessionDetailsViewState(sections: []))
updateViewState(userSessionInfo: userSessionInfo)
updateViewState(session: session)
}
// MARK: - Public
// MARK: - Private
private func updateViewState(userSessionInfo: UserSessionInfo) {
private func updateViewState(session: UserSessionInfo) {
var sections = [UserSessionDetailsSectionViewData]()
sections.append(sessionSection(userSessionInfo: userSessionInfo))
sections.append(sessionSection(session: session))
if let deviceSection = deviceSection(userSessionInfo: userSessionInfo) {
if let deviceSection = deviceSection(session: session) {
sections.append(deviceSection)
}
state = UserSessionDetailsViewState(sections: sections)
}
private func sessionSection(userSessionInfo: UserSessionInfo) -> UserSessionDetailsSectionViewData {
private func sessionSection(session: UserSessionInfo) -> UserSessionDetailsSectionViewData {
var sessionItems = [UserSessionDetailsSectionItemViewData]()
if let sessionName = userSessionInfo.sessionName {
if let sessionName = session.sessionName {
sessionItems.append(UserSessionDetailsSectionItemViewData(title: VectorL10n.userSessionDetailsSessionName,
value: sessionName))
}
sessionItems.append(UserSessionDetailsSectionItemViewData(title: VectorL10n.keyVerificationManuallyVerifyDeviceIdTitle,
value: userSessionInfo.sessionId))
value: session.sessionId))
return UserSessionDetailsSectionViewData(header: VectorL10n.userSessionDetailsSessionSectionHeader,
footer: VectorL10n.userSessionDetailsSessionSectionFooter,
items: sessionItems)
}
private func deviceSection(userSessionInfo: UserSessionInfo) -> UserSessionDetailsSectionViewData? {
private func deviceSection(session: UserSessionInfo) -> UserSessionDetailsSectionViewData? {
var deviceSectionItems = [UserSessionDetailsSectionItemViewData]()
if let lastSeenIP = userSessionInfo.lastSeenIP {
if let lastSeenIP = session.lastSeenIP {
deviceSectionItems.append(UserSessionDetailsSectionItemViewData(title: VectorL10n.userSessionDetailsDeviceIpAddress,
value: lastSeenIP))
}