From 7a591f3e30b2bcf7485e5dc890ea03517bcbe1f7 Mon Sep 17 00:00:00 2001 From: Khan Winter <35942988+thecoolwinter@users.noreply.github.com> Date: Mon, 25 Aug 2025 09:50:08 -0500 Subject: [PATCH 1/2] Fix Build Warnings --- .../PackageSourceParser.swift | 2 +- .../Features/Tasks/TaskManagerTests.swift | 25 ++++++++++++++++--- .../TerminalUtilityUITests.swift | 2 +- 3 files changed, 24 insertions(+), 5 deletions(-) diff --git a/CodeEdit/Features/LSP/Registry/PackageSourceParser/PackageSourceParser.swift b/CodeEdit/Features/LSP/Registry/PackageSourceParser/PackageSourceParser.swift index 666f05a73b..803d061fa1 100644 --- a/CodeEdit/Features/LSP/Registry/PackageSourceParser/PackageSourceParser.swift +++ b/CodeEdit/Features/LSP/Registry/PackageSourceParser/PackageSourceParser.swift @@ -40,7 +40,7 @@ enum PackageSourceParser { false } - var source = PackageSource( + let source = PackageSource( sourceId: sourceId, type: isSourceBuild ? .sourceBuild : .github, pkgName: packageName, diff --git a/CodeEditTests/Features/Tasks/TaskManagerTests.swift b/CodeEditTests/Features/Tasks/TaskManagerTests.swift index 898c863f0f..a4bdbc5f03 100644 --- a/CodeEditTests/Features/Tasks/TaskManagerTests.swift +++ b/CodeEditTests/Features/Tasks/TaskManagerTests.swift @@ -26,9 +26,28 @@ class TaskManagerTests { #expect(taskManager.availableTasks == mockWorkspaceSettings.tasks) } - @Test(arguments: [SettingsData.TerminalShell.zsh, SettingsData.TerminalShell.bash]) - func executeSelectedTask(_ shell: SettingsData.TerminalShell) async throws { - Settings.shared.preferences.terminal.shell = shell + @Test + func executeTaskInZsh() async throws { + Settings.shared.preferences.terminal.shell = .zsh + + let task = CETask(name: "Test Task", command: "echo 'Hello World'") + mockWorkspaceSettings.tasks.append(task) + taskManager.selectedTaskID = task.id + taskManager.executeActiveTask() + + await waitForExpectation(timeout: .seconds(10)) { + self.taskManager.activeTasks[task.id]?.status == .finished + } onTimeout: { + Issue.record("Status never changed to finished.") + } + + let outputString = try #require(taskManager.activeTasks[task.id]?.output?.getBufferAsString()) + #expect(outputString.contains("Hello World")) + } + + @Test + func executeTaskInBash() async throws { + Settings.shared.preferences.terminal.shell = .bash let task = CETask(name: "Test Task", command: "echo 'Hello World'") mockWorkspaceSettings.tasks.append(task) diff --git a/CodeEditUITests/Features/UtilityArea/TerminalUtility/TerminalUtilityUITests.swift b/CodeEditUITests/Features/UtilityArea/TerminalUtility/TerminalUtilityUITests.swift index bdaccfb5bc..764b49341d 100644 --- a/CodeEditUITests/Features/UtilityArea/TerminalUtility/TerminalUtilityUITests.swift +++ b/CodeEditUITests/Features/UtilityArea/TerminalUtility/TerminalUtilityUITests.swift @@ -28,7 +28,7 @@ final class TerminalUtilityUITests: XCTestCase { } func testTerminalsInputData() throws { - var terminal = utilityArea.textViews["Terminal Emulator"] + let terminal = utilityArea.textViews["Terminal Emulator"] XCTAssertTrue(terminal.exists) terminal.click() terminal.typeText("echo hello world") From d602c9ec99aa41dd8ede92cadb5c837e02f1c2d2 Mon Sep 17 00:00:00 2001 From: Khan Winter <35942988+thecoolwinter@users.noreply.github.com> Date: Mon, 25 Aug 2025 10:01:51 -0500 Subject: [PATCH 2/2] Serialize Task Manager Tests --- CodeEditTests/Features/Tasks/TaskManagerTests.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CodeEditTests/Features/Tasks/TaskManagerTests.swift b/CodeEditTests/Features/Tasks/TaskManagerTests.swift index a4bdbc5f03..be384edd30 100644 --- a/CodeEditTests/Features/Tasks/TaskManagerTests.swift +++ b/CodeEditTests/Features/Tasks/TaskManagerTests.swift @@ -10,7 +10,7 @@ import Testing @testable import CodeEdit @MainActor -@Suite +@Suite(.serialized) class TaskManagerTests { var taskManager: TaskManager! var mockWorkspaceSettings: CEWorkspaceSettingsData!