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

Extension loading improvements (#31) and more

* The README has been updated with additional information
* The acknowledgements section has been added to the README
* The php@X.X/opt/bin/php-config binary is now used (#39)
* Extensions are now loaded from all possible .ini files
* PHP Monitor's preferences window can now be triggered via hotkey
* The first nine extensions can be triggered via hotkey
This commit is contained in:
2021-04-07 16:58:05 +02:00
parent faf49fbe1d
commit 0c0e7fc87d
11 changed files with 147 additions and 22 deletions

View File

@ -23,24 +23,35 @@ class ExtensionParserTest: XCTestCase {
func testExtensionNameIsCorrect() throws {
let extensions = PhpExtension.load(from: Self.phpIniFileUrl)
XCTAssertEqual(extensions.first!.name, "xdebug")
XCTAssertEqual(extensions.last!.name, "imagick")
let extensionNames = extensions.map { (ext) -> String in
return ext.name
}
XCTAssertTrue(extensionNames.contains("xdebug"))
XCTAssertTrue(extensionNames.contains("imagick"))
XCTAssertTrue(extensionNames.contains("opcache"))
XCTAssertTrue(extensionNames.contains("yaml"))
XCTAssertFalse(extensionNames.contains("fake"))
}
func testExtensionStatusIsCorrect() throws {
let extensions = PhpExtension.load(from: Self.phpIniFileUrl)
XCTAssertEqual(extensions.first!.enabled, true)
XCTAssertEqual(extensions.last!.enabled, false)
// xdebug should be enabled
XCTAssertEqual(extensions[0].enabled, true)
// imagick should be disabled
XCTAssertEqual(extensions[1].enabled, false)
}
func testToggleWorksAsExpected() throws {
let destination = Utility.copyToTemporaryFile(resourceName: "php", fileExtension: "ini")!
let extensions = PhpExtension.load(from: destination)
XCTAssertEqual(extensions.count, 2)
XCTAssertEqual(extensions.count, 4)
// Try to disable it!
// Try to disable xdebug (should be detected first)!
let xdebug = extensions.first!
XCTAssertTrue(xdebug.name == "xdebug")
XCTAssertEqual(xdebug.enabled, true)
xdebug.toggle()
XCTAssertEqual(xdebug.enabled, false)