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:
@ -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)
|
||||
|
@ -1,5 +1,8 @@
|
||||
zend_extension="xdebug.so"
|
||||
; zend_extension="imagick.so"
|
||||
zend_extension=/opt/homebrew/opt/php/lib/php/20200930/opcache.so
|
||||
zend_extension="/opt/homebrew/opt/php/lib/php/20200930/yaml.so"
|
||||
#zend_extension="/opt/homebrew/opt/php/lib/php/20200930/fake.so"
|
||||
|
||||
[PHP]
|
||||
|
||||
|
Reference in New Issue
Block a user