|
|
|
// Copyright © 2023 Rangeproof Pty Ltd. All rights reserved.
|
|
|
|
|
|
|
|
import Foundation
|
|
|
|
|
|
|
|
import Quick
|
|
|
|
import Nimble
|
|
|
|
|
|
|
|
@testable import SessionUtilitiesKit
|
|
|
|
|
|
|
|
class DependenciesSpec: QuickSpec {
|
|
|
|
override class func spec() {
|
|
|
|
// MARK: Configuration
|
|
|
|
|
|
|
|
@TestState var dependencies: Dependencies! = Dependencies()
|
|
|
|
|
|
|
|
// MARK: - Dependencies
|
|
|
|
describe("Dependencies") {
|
|
|
|
// MARK: -- when accessing dateNow
|
|
|
|
context("when accessing dateNow") {
|
|
|
|
// MARK: ---- creates a new date every time when not overwritten
|
|
|
|
it("creates a new date every time when not overwritten") {
|
|
|
|
let date1 = dependencies.dateNow
|
|
|
|
Thread.sleep(forTimeInterval: 0.05)
|
|
|
|
let date2 = dependencies.dateNow
|
|
|
|
|
|
|
|
expect(date1.timeIntervalSince1970).toNot(equal(date2.timeIntervalSince1970))
|
|
|
|
}
|
|
|
|
|
|
|
|
// MARK: ---- returns the same new date every time when overwritten
|
|
|
|
it("returns the same new date every time when overwritten") {
|
|
|
|
dependencies.dateNow = Date(timeIntervalSince1970: 1234567890)
|
|
|
|
|
|
|
|
let date1 = dependencies.dateNow
|
|
|
|
Thread.sleep(forTimeInterval: 0.05)
|
|
|
|
let date2 = dependencies.dateNow
|
|
|
|
|
|
|
|
expect(date1.timeIntervalSince1970).to(equal(date2.timeIntervalSince1970))
|
|
|
|
expect(date1.timeIntervalSince1970).to(equal(1234567890))
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|