Signal-iOS/SignalServiceKit/Util/OWSAssertionError.swift
Harry bb083ca39c
Fold SignalCoreKit into SignalServiceKit
Co-authored-by: Adam Sharp <sharplet@signal.org>
2024-06-26 08:44:41 -07:00

40 lines
1.0 KiB
Swift

//
// Copyright 2024 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
//
import Foundation
public struct OWSAssertionError: Error {
#if TESTABLE_BUILD
public static var test_skipAssertions = false
#endif
public let description: String
public init(
_ description: String,
file: String = #fileID,
function: String = #function,
line: Int = #line
) {
#if TESTABLE_BUILD
if Self.test_skipAssertions {
Logger.warn("assertionError: \(description)")
} else {
owsFailDebug("assertionError: \(description)", file: file, function: function, line: line)
}
#else
owsFailDebug("assertionError: \(description)", file: file, function: function, line: line)
#endif
self.description = description
}
}
// An error that won't assert.
public struct OWSGenericError: Error {
public let description: String
public init(_ description: String) {
self.description = description
}
}