1
0
mirror of https://github.com/nicoverbruggen/phpmon.git synced 2025-08-07 03:50:08 +02:00

Fix tests

This commit is contained in:
2022-10-06 23:00:21 +02:00
parent e2ab7f08ed
commit ed3622cc4e
6 changed files with 31 additions and 27 deletions

View File

@ -53,13 +53,14 @@ class HomebrewPackageTest: XCTestCase {
/// and requires the Valet services to be installed: php, nginx and dnsmasq.
/// If this test fails, there is an issue with your Homebrew installation
/// or the JSON API of the Homebrew output may have changed.
func testCanParseServicesJsonFromCliOutput() throws {
func testCanParseServicesJsonFromCliOutput() async throws {
ActiveShell.useSystem()
let services = try! JSONDecoder().decode(
[HomebrewService].self,
from: LegacyShell.pipe(
"sudo \(Paths.brew) services info --all --json",
requiresPath: true
).data(using: .utf8)!
from: await Shell.pipe(
"sudo \(Paths.brew) services info --all --json"
).out.data(using: .utf8)!
).filter({ service in
return ["php", "nginx", "dnsmasq"].contains(service.name)
})
@ -74,10 +75,12 @@ class HomebrewPackageTest: XCTestCase {
/// and requires the `php` formula to be installed.
/// If this test fails, there is an issue with your Homebrew installation
/// or the JSON API of the Homebrew output may have changed.
func testCanLoadExtensionJsonFromCliOutput() throws {
func testCanLoadExtensionJsonFromCliOutput() async throws {
ActiveShell.useSystem()
let package = try! JSONDecoder().decode(
[HomebrewPackage].self,
from: LegacyShell.pipe("\(Paths.brew) info php --json", requiresPath: true).data(using: .utf8)!
from: await Shell.pipe("\(Paths.brew) info php --json").out.data(using: .utf8)!
).first!
XCTAssertTrue(package.name == "php")

View File

@ -49,7 +49,7 @@ class PhpExtensionTest: XCTestCase {
XCTAssertEqual(extensions[1].enabled, false)
}
func testToggleWorksAsExpected() throws {
func testToggleWorksAsExpected() async throws {
let destination = Utility.copyToTemporaryFile(resourceName: "php", fileExtension: "ini")!
let extensions = PhpExtension.from(filePath: destination.path)
XCTAssertEqual(extensions.count, 6)
@ -58,7 +58,7 @@ class PhpExtensionTest: XCTestCase {
let xdebug = extensions.first!
XCTAssertTrue(xdebug.name == "xdebug")
XCTAssertEqual(xdebug.enabled, true)
xdebug.toggle()
await xdebug.toggle()
XCTAssertEqual(xdebug.enabled, false)
// Check if the file contains the appropriate data

View File

@ -10,8 +10,8 @@ import XCTest
class AppUpdaterCheckTest: XCTestCase {
func testCanRetrieveVersionFromCask() {
let caskVersion = AppUpdateChecker.retrieveVersionFromCask()
func testCanRetrieveVersionFromCask() async {
let caskVersion = await AppUpdateChecker.retrieveVersionFromCask()
let version = VersionExtractor.from(caskVersion)

View File

@ -10,8 +10,8 @@ import XCTest
class PhpVersionDetectionTest: XCTestCase {
func testCanDetectValidPhpVersions() throws {
let outcome = PhpEnv.shared.extractPhpVersions(from: [
func testCanDetectValidPhpVersions() async throws {
let outcome = await PhpEnv.shared.extractPhpVersions(from: [
"", // empty lines should be omitted
"php@8.0",
"php@8.0", // should only be detected once

View File

@ -10,8 +10,8 @@ import XCTest
class ValetVersionExtractorTest: XCTestCase {
func testDetermineValetVersion() {
let version = valet("--version", sudo: false)
func testDetermineValetVersion() async {
let version = await valet("--version", sudo: false)
XCTAssert(version.contains("Laravel Valet 2") || version.contains("Laravel Valet 3"))
}

View File

@ -47,6 +47,19 @@ extension MainMenu {
}
}
@objc func restartNginx() {
Task { // Simple restart service
await Actions.restartNginx()
}
}
@objc func restartDnsMasq() {
Task { // Simple restart service
await Actions.restartDnsMasq()
}
}
@MainActor @objc func restartValetServices() {
Task { // Restart services and show notification
await Actions.restartDnsMasq()
@ -73,18 +86,6 @@ extension MainMenu {
}
}
@objc func restartNginx() {
Task {
await Actions.restartNginx()
}
}
@objc func restartDnsMasq() {
Task {
await Actions.restartDnsMasq()
}
}
@objc func disableAllXdebugModes() {
guard let file = PhpEnv.shared.getConfigFile(forKey: "xdebug.mode") else {
Log.info("xdebug.mode could not be found in any .ini file, aborting.")