mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-04 19:44:05 +00:00
Add a TracingHook. (#4345)
This commit is contained in:
@@ -10,7 +10,7 @@
|
||||
import XCTest
|
||||
|
||||
class LoggingTests: XCTestCase {
|
||||
static var targetConfiguration: Target.Configuration?
|
||||
static var targetConfiguration: Target.ConfigurationResult?
|
||||
|
||||
private enum Constants {
|
||||
static let genericFailure = "Test failed"
|
||||
@@ -25,7 +25,11 @@ class LoggingTests: XCTestCase {
|
||||
XCTAssertTrue(Tracing.logFiles.isEmpty)
|
||||
|
||||
if Self.targetConfiguration == nil {
|
||||
Self.targetConfiguration = Target.tests.configure(logLevel: .info, traceLogPacks: [], sentryURL: nil)
|
||||
Self.targetConfiguration = Target.tests.configure(logLevel: .info,
|
||||
traceLogPacks: [],
|
||||
sentryURL: nil,
|
||||
rageshakeURL: ServiceLocator.shared.settings.bugReportRageshakeURL,
|
||||
appHooks: AppHooks())
|
||||
}
|
||||
|
||||
// There is something weird with Rust logging where the file writing handle doesn't
|
||||
@@ -180,7 +184,11 @@ class LoggingTests: XCTestCase {
|
||||
|
||||
// When logging that value
|
||||
if Self.targetConfiguration == nil {
|
||||
Self.targetConfiguration = Target.tests.configure(logLevel: .info, traceLogPacks: [], sentryURL: nil)
|
||||
Self.targetConfiguration = Target.tests.configure(logLevel: .info,
|
||||
traceLogPacks: [],
|
||||
sentryURL: nil,
|
||||
rageshakeURL: ServiceLocator.shared.settings.bugReportRageshakeURL,
|
||||
appHooks: AppHooks())
|
||||
}
|
||||
|
||||
MXLog.info(textMessage)
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
//
|
||||
// Copyright 2025 New Vector Ltd.
|
||||
//
|
||||
// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
|
||||
// Please see LICENSE files in the repository root for full details.
|
||||
//
|
||||
|
||||
import XCTest
|
||||
|
||||
@testable import ElementX
|
||||
|
||||
class URLTests: XCTestCase {
|
||||
func testURLDirectoryName() {
|
||||
let url: URL = "https://matrix.example.com/foo/bar/"
|
||||
let directoryName = url.asDirectoryName()
|
||||
XCTAssertEqual(directoryName, "matrix.example.com-foo-bar")
|
||||
createDirectory(with: directoryName)
|
||||
}
|
||||
|
||||
func testComplexURLDirectoryName() {
|
||||
let url: URL = "https://us%3Aer:pa%40%3Ass@[2001:db8:85a3::8a2e:370:7334]:8443/..//folder/./fi%20le(1).html;p=1;q=2"
|
||||
let directoryName = url.asDirectoryName()
|
||||
XCTAssertEqual(directoryName, "us%3Aer-pa%40%3Ass@[2001-db8-85a3--8a2e-370-7334]-8443-..--folder-.-fi%20le(1).html;p=1;q=2")
|
||||
createDirectory(with: directoryName)
|
||||
}
|
||||
|
||||
// MARK: - Helpers
|
||||
|
||||
func createDirectory(with directoryName: String) {
|
||||
let url = URL.temporaryDirectory.appending(path: directoryName)
|
||||
try? FileManager.default.removeItem(at: url)
|
||||
|
||||
do {
|
||||
try FileManager.default.createDirectory(at: url, withIntermediateDirectories: true)
|
||||
} catch {
|
||||
XCTFail("Invalid file path: \(error.localizedDescription)")
|
||||
}
|
||||
|
||||
guard FileManager.default.directoryExists(at: url) else {
|
||||
XCTFail("Invalid file path")
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user