Fixed the broken tests

pull/928/head
Morgan Pretty 7 months ago
parent f97170fdcd
commit b3eb78aaee

@ -41,7 +41,7 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
)
@TestState var cancellables: [AnyCancellable]! = [
viewModel.observableTableData
viewModel.tableDataPublisher
.receive(on: ImmediateScheduler.shared)
.sink(
receiveCompletion: { _ in },
@ -68,9 +68,7 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
.to(
equal(
SessionCell.Info(
id: ThreadDisappearingMessagesSettingsViewModel.Item(
title: "DISAPPEARING_MESSAGES_OFF".localized()
),
id: "DISAPPEARING_MESSAGES_OFF".localized(),
position: .top,
title: "DISAPPEARING_MESSAGES_OFF".localized(),
rightAccessory: .radio(
@ -87,7 +85,7 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
.to(
equal(
SessionCell.Info(
id: ThreadDisappearingMessagesSettingsViewModel.Item(title: title),
id: title,
position: .bottom,
title: title,
rightAccessory: .radio(
@ -116,7 +114,7 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
using: dependencies
)
cancellables.append(
viewModel.observableTableData
viewModel.tableDataPublisher
.receive(on: ImmediateScheduler.shared)
.sink(
receiveCompletion: { _ in },
@ -128,9 +126,7 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
.to(
equal(
SessionCell.Info(
id: ThreadDisappearingMessagesSettingsViewModel.Item(
title: "DISAPPEARING_MESSAGES_OFF".localized()
),
id: "DISAPPEARING_MESSAGES_OFF".localized(),
position: .top,
title: "DISAPPEARING_MESSAGES_OFF".localized(),
rightAccessory: .radio(
@ -147,7 +143,7 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
.to(
equal(
SessionCell.Info(
id: ThreadDisappearingMessagesSettingsViewModel.Item(title: title),
id: title,
position: .bottom,
title: title,
rightAccessory: .radio(
@ -160,7 +156,7 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
// MARK: -- has no right bar button
it("has no right bar button") {
var items: [ParentType.NavItem]?
var items: [SessionNavItem<ThreadDisappearingMessagesSettingsViewModel.NavItem>]!
cancellables.append(
viewModel.rightNavItems
@ -176,7 +172,7 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
// MARK: -- when changed from the previous setting
context("when changed from the previous setting") {
@TestState var items: [ParentType.NavItem]?
@TestState var items: [SessionNavItem<ThreadDisappearingMessagesSettingsViewModel.NavItem>]!
beforeEach {
cancellables.append(
@ -195,7 +191,7 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
it("shows the save button") {
expect(items)
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadDisappearingMessagesSettingsViewModel.NavItem>(
id: .save,
systemItem: .save,
accessibilityIdentifier: "Save button"
@ -210,7 +206,7 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
var didDismissScreen: Bool = false
cancellables.append(
viewModel.dismissScreen
viewModel.navigatableState.dismissScreen
.receive(on: ImmediateScheduler.shared)
.sink(
receiveCompletion: { _ in },
@ -218,14 +214,14 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
)
)
items?.first?.action?()
items.first?.action?()
expect(didDismissScreen).to(beTrue())
}
// MARK: ------ saves the updated config
it("saves the updated config") {
items?.first?.action?()
items.first?.action?()
let updatedConfig: DisappearingMessagesConfiguration? = mockStorage.read { db in
try DisappearingMessagesConfiguration.fetchOne(db, id: "TestId")
@ -240,7 +236,3 @@ class ThreadDisappearingMessagesSettingsViewModelSpec: QuickSpec {
}
}
}
// MARK: - Test Types
fileprivate typealias ParentType = SessionTableViewModel<ThreadDisappearingMessagesSettingsViewModel.NavButton, ThreadDisappearingMessagesSettingsViewModel.Section, ThreadDisappearingMessagesSettingsViewModel.Item>

@ -57,7 +57,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
)
@TestState var disposables: [AnyCancellable]! = [
viewModel.observableTableData
viewModel.tableDataPublisher
.receive(on: ImmediateScheduler.shared)
.sink(
receiveCompletion: { _ in },
@ -149,7 +149,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
using: dependencies
)
disposables.append(
viewModel.observableTableData
viewModel.tableDataPublisher
.receive(on: ImmediateScheduler.shared)
.sink(
receiveCompletion: { _ in },
@ -171,7 +171,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
expect(viewModel.leftNavItems.firstValue()).to(equal([]))
expect(viewModel.rightNavItems.firstValue())
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadSettingsViewModel.NavItem>(
id: .edit,
systemItem: .edit,
accessibilityIdentifier: "Edit button"
@ -193,7 +193,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
context("when entering edit mode") {
beforeEach {
viewModel.navState.sinkAndStore(in: &disposables)
viewModel.rightNavItems.firstValue()??.first?.action?()
viewModel.rightNavItems.firstValue()?.first?.action?()
viewModel.textChanged("TestNew", for: .nickname)
}
@ -204,7 +204,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
expect(viewModel.leftNavItems.firstValue())
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadSettingsViewModel.NavItem>(
id: .cancel,
systemItem: .cancel,
accessibilityIdentifier: "Cancel button"
@ -212,7 +212,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
]))
expect(viewModel.rightNavItems.firstValue())
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadSettingsViewModel.NavItem>(
id: .done,
systemItem: .done,
accessibilityIdentifier: "Done"
@ -223,7 +223,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
// MARK: ------ when cancelling edit mode
context("when cancelling edit mode") {
beforeEach {
viewModel.leftNavItems.firstValue()??.first?.action?()
viewModel.leftNavItems.firstValue()?.first?.action?()
}
// MARK: -------- exits editing mode
@ -234,7 +234,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
expect(viewModel.leftNavItems.firstValue()).to(equal([]))
expect(viewModel.rightNavItems.firstValue())
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadSettingsViewModel.NavItem>(
id: .edit,
systemItem: .edit,
accessibilityIdentifier: "Edit button"
@ -258,7 +258,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
// MARK: ------ when saving edit mode
context("when saving edit mode") {
beforeEach {
viewModel.rightNavItems.firstValue()??.first?.action?()
viewModel.rightNavItems.firstValue()?.first?.action?()
}
// MARK: -------- exits editing mode
@ -269,7 +269,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
expect(viewModel.leftNavItems.firstValue()).to(equal([]))
expect(viewModel.rightNavItems.firstValue())
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadSettingsViewModel.NavItem>(
id: .edit,
systemItem: .edit,
accessibilityIdentifier: "Edit button"
@ -318,7 +318,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
expect(viewModel.leftNavItems.firstValue()).to(equal([]))
expect(viewModel.rightNavItems.firstValue())
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadSettingsViewModel.NavItem>(
id: .edit,
systemItem: .edit,
accessibilityIdentifier: "Edit button"
@ -330,7 +330,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
context("when entering edit mode") {
beforeEach {
viewModel.navState.sinkAndStore(in: &disposables)
viewModel.rightNavItems.firstValue()??.first?.action?()
viewModel.rightNavItems.firstValue()?.first?.action?()
viewModel.textChanged("TestUserNew", for: .nickname)
}
@ -341,7 +341,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
expect(viewModel.leftNavItems.firstValue())
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadSettingsViewModel.NavItem>(
id: .cancel,
systemItem: .cancel,
accessibilityIdentifier: "Cancel button"
@ -349,7 +349,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
]))
expect(viewModel.rightNavItems.firstValue())
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadSettingsViewModel.NavItem>(
id: .done,
systemItem: .done,
accessibilityIdentifier: "Done"
@ -360,7 +360,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
// MARK: ------ when cancelling edit mode
context("when cancelling edit mode") {
beforeEach {
viewModel.leftNavItems.firstValue()??.first?.action?()
viewModel.leftNavItems.firstValue()?.first?.action?()
}
// MARK: -------- exits editing mode
@ -371,7 +371,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
expect(viewModel.leftNavItems.firstValue()).to(equal([]))
expect(viewModel.rightNavItems.firstValue())
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadSettingsViewModel.NavItem>(
id: .edit,
systemItem: .edit,
accessibilityIdentifier: "Edit button"
@ -393,7 +393,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
// MARK: ------ when saving edit mode
context("when saving edit mode") {
beforeEach {
viewModel.rightNavItems.firstValue()??.first?.action?()
viewModel.rightNavItems.firstValue()?.first?.action?()
}
// MARK: -------- exits editing mode
@ -404,7 +404,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
expect(viewModel.leftNavItems.firstValue()).to(equal([]))
expect(viewModel.rightNavItems.firstValue())
.to(equal([
ParentType.NavItem(
SessionNavItem<ThreadSettingsViewModel.NavItem>(
id: .edit,
systemItem: .edit,
accessibilityIdentifier: "Edit button"
@ -446,7 +446,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
using: dependencies
)
disposables.append(
viewModel.observableTableData
viewModel.tableDataPublisher
.receive(on: ImmediateScheduler.shared)
.sink(
receiveCompletion: { _ in },
@ -491,7 +491,7 @@ class ThreadSettingsViewModelSpec: QuickSpec {
using: dependencies
)
disposables.append(
viewModel.observableTableData
viewModel.tableDataPublisher
.receive(on: ImmediateScheduler.shared)
.sink(
receiveCompletion: { _ in },
@ -517,7 +517,3 @@ class ThreadSettingsViewModelSpec: QuickSpec {
}
}
}
// MARK: - Test Types
fileprivate typealias ParentType = SessionTableViewModel<ThreadSettingsViewModel.NavButton, ThreadSettingsViewModel.Section, ThreadSettingsViewModel.Setting>

@ -22,12 +22,14 @@ class NotificationContentViewModelSpec: QuickSpec {
SNUIKit.self
]
)
@TestState var viewModel: NotificationContentViewModel! = NotificationContentViewModel(
@TestState var dependencies: Dependencies! = Dependencies(
storage: mockStorage,
scheduling: .immediate
scheduler: .immediate
)
@TestState var dataChangeCancellable: AnyCancellable? = viewModel.observableTableData
@TestState var viewModel: NotificationContentViewModel! = NotificationContentViewModel(
using: dependencies
)
@TestState var dataChangeCancellable: AnyCancellable? = viewModel.tableDataPublisher
.receive(on: ImmediateScheduler.shared)
.sink(
receiveCompletion: { _ in },
@ -88,8 +90,8 @@ class NotificationContentViewModelSpec: QuickSpec {
mockStorage.write { db in
db[.preferencesNotificationPreviewType] = Preferences.NotificationPreviewType.nameNoPreview
}
viewModel = NotificationContentViewModel(storage: mockStorage, scheduling: .immediate)
dataChangeCancellable = viewModel.observableTableData
viewModel = NotificationContentViewModel(using: dependencies)
dataChangeCancellable = viewModel.tableDataPublisher
.receive(on: ImmediateScheduler.shared)
.sink(
receiveCompletion: { _ in },
@ -141,7 +143,7 @@ class NotificationContentViewModelSpec: QuickSpec {
it("dismisses the screen") {
var didDismissScreen: Bool = false
dismissCancellable = viewModel.dismissScreen
dismissCancellable = viewModel.navigatableState.dismissScreen
.receive(on: ImmediateScheduler.shared)
.sink(
receiveCompletion: { _ in },

Loading…
Cancel
Save