mirror of
https://github.com/nicoverbruggen/phpmon.git
synced 2025-11-07 05:10:06 +01:00
⬆️ Modernize test suite files
This commit is contained in:
@@ -111,7 +111,13 @@ class PhpEnvironments {
|
|||||||
It's possible for the alias to be newer than the actual installed version of PHP.
|
It's possible for the alias to be newer than the actual installed version of PHP.
|
||||||
*/
|
*/
|
||||||
static var homebrewBrewPhpAlias: String {
|
static var homebrewBrewPhpAlias: String {
|
||||||
if PhpEnvironments.shared.homebrewPackage == nil { return "8.2" }
|
if PhpEnvironments.shared.homebrewPackage == nil {
|
||||||
|
// For UI testing and as a fallback, determine this version by using (fake) php-config
|
||||||
|
let version = Command.execute(path: "/opt/homebrew/bin/php-config",
|
||||||
|
arguments: ["--version"],
|
||||||
|
trimNewlines: true)
|
||||||
|
return try! VersionNumber.parse(version).short
|
||||||
|
}
|
||||||
|
|
||||||
return PhpEnvironments.shared.homebrewPackage.version
|
return PhpEnvironments.shared.homebrewPackage.version
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,17 +52,16 @@ class TestableConfigurations {
|
|||||||
shellOutput: [
|
shellOutput: [
|
||||||
"/opt/homebrew/bin/brew --version"
|
"/opt/homebrew/bin/brew --version"
|
||||||
: .instant("""
|
: .instant("""
|
||||||
Homebrew 4.0.17-93-gb0dc84b
|
Homebrew 4.6.11
|
||||||
Homebrew/homebrew-core (git revision 4113c35d80d; last commit 2023-04-06)
|
|
||||||
Homebrew/homebrew-cask (git revision bcd8ecb74c; last commit 2023-04-06)
|
|
||||||
"""),
|
"""),
|
||||||
"/opt/homebrew/bin/php -v"
|
"/opt/homebrew/bin/php -v"
|
||||||
: .instant("""
|
: .instant("""
|
||||||
PHP 8.2.6 (cli) (built: May 11 2023 12:51:38) (NTS)
|
PHP 8.4.5 (cli) (built: Aug 26 2025 13:36:28) (NTS)
|
||||||
Copyright (c) The PHP Group
|
Copyright (c) The PHP Group
|
||||||
Zend Engine v4.2.6, Copyright (c) Zend Technologies
|
Built by Homebrew
|
||||||
with Zend OPcache v8.2.6, Copyright (c), by Zend Technologies
|
Zend Engine v4.4.12, Copyright (c) Zend Technologies
|
||||||
with Xdebug v3.2.0, Copyright (c) 2002-2022, by Derick Rethans
|
with Xdebug v3.4.5, Copyright (c) 2002-2025, by Derick Rethans
|
||||||
|
with Zend OPcache v8.4.12, Copyright (c), by Zend Technologies
|
||||||
"""),
|
"""),
|
||||||
"sysctl -n sysctl.proc_translated"
|
"sysctl -n sysctl.proc_translated"
|
||||||
: .instant("0"),
|
: .instant("0"),
|
||||||
@@ -105,7 +104,7 @@ class TestableConfigurations {
|
|||||||
%admin ALL=(root) NOPASSWD:SETENV: VALET
|
%admin ALL=(root) NOPASSWD:SETENV: VALET
|
||||||
"""),
|
"""),
|
||||||
"valet --version"
|
"valet --version"
|
||||||
: .instant("Laravel Valet 3.1.11"),
|
: .instant("Laravel Valet 4.9.0"),
|
||||||
"/opt/homebrew/bin/brew tap"
|
"/opt/homebrew/bin/brew tap"
|
||||||
: .instant("""
|
: .instant("""
|
||||||
homebrew/cask
|
homebrew/cask
|
||||||
@@ -150,7 +149,7 @@ class TestableConfigurations {
|
|||||||
cask 'phpmon-dev' do
|
cask 'phpmon-dev' do
|
||||||
depends_on formula: 'gnu-sed'
|
depends_on formula: 'gnu-sed'
|
||||||
|
|
||||||
version '6.0.0_1000'
|
version '25.08.0_1000'
|
||||||
sha256 '1cb147bd1b1fbd52971d90dff577465b644aee7c878f15ede57f46e8f217067a'
|
sha256 '1cb147bd1b1fbd52971d90dff577465b644aee7c878f15ede57f46e8f217067a'
|
||||||
|
|
||||||
url 'https://github.com/nicoverbruggen/phpmon/releases/download/v6.0/phpmon-dev.zip'
|
url 'https://github.com/nicoverbruggen/phpmon/releases/download/v6.0/phpmon-dev.zip'
|
||||||
@@ -178,10 +177,6 @@ class TestableConfigurations {
|
|||||||
: .delayed(0.2, "OK"),
|
: .delayed(0.2, "OK"),
|
||||||
"sudo /opt/homebrew/bin/brew services start dnsmasq"
|
"sudo /opt/homebrew/bin/brew services start dnsmasq"
|
||||||
: .delayed(0.2, "OK"),
|
: .delayed(0.2, "OK"),
|
||||||
"ln -sF ~/.config/valet/valet82.sock ~/.config/valet/valet.sock"
|
|
||||||
: .instant("OK"),
|
|
||||||
"ln -sF ~/.config/valet/valet83.sock ~/.config/valet/valet.sock"
|
|
||||||
: .instant("OK"),
|
|
||||||
"ln -sF ~/.config/valet/valet84.sock ~/.config/valet/valet.sock"
|
"ln -sF ~/.config/valet/valet84.sock ~/.config/valet/valet.sock"
|
||||||
: .instant("OK"),
|
: .instant("OK"),
|
||||||
"/opt/homebrew/bin/brew update >/dev/null && /opt/homebrew/bin/brew outdated --json --formulae": .delayed(2.0, """
|
"/opt/homebrew/bin/brew update >/dev/null && /opt/homebrew/bin/brew outdated --json --formulae": .delayed(2.0, """
|
||||||
@@ -190,9 +185,9 @@ class TestableConfigurations {
|
|||||||
{
|
{
|
||||||
"name": "php",
|
"name": "php",
|
||||||
"installed_versions": [
|
"installed_versions": [
|
||||||
"8.2.6"
|
"8.4.5"
|
||||||
],
|
],
|
||||||
"current_version": "8.2.11",
|
"current_version": "8.4.11",
|
||||||
"pinned": false,
|
"pinned": false,
|
||||||
"pinned_version": null
|
"pinned_version": null
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,11 +18,12 @@ final class MainMenuTest: UITestCase {
|
|||||||
let app = launch(openMenu: true)
|
let app = launch(openMenu: true)
|
||||||
|
|
||||||
assertAllExist([
|
assertAllExist([
|
||||||
// "Switch to PHP 8.2 (php)" should be visible since it is aliased to `php`
|
// "Switch to PHP 8.4 (php)" should be visible since it is aliased to `php`
|
||||||
app.menuItems["\("mi_php_switch".localized) 8.2 (php)"],
|
app.menuItems["\("mi_php_switch".localized) 8.4 (php)"],
|
||||||
// "Switch to PHP 8.1" should be the non-disabled option
|
// "Switch to PHP 8.1" should be the non-disabled option
|
||||||
|
app.menuItems["\("mi_php_switch".localized) 8.3 (php@8.3)"],
|
||||||
|
app.menuItems["\("mi_php_switch".localized) 8.2 (php@8.2)"],
|
||||||
app.menuItems["\("mi_php_switch".localized) 8.1 (php@8.1)"],
|
app.menuItems["\("mi_php_switch".localized) 8.1 (php@8.1)"],
|
||||||
// "Switch to PHP 8.0" should be the non-disabled option
|
|
||||||
app.menuItems["\("mi_php_switch".localized) 8.0 (php@8.0)"],
|
app.menuItems["\("mi_php_switch".localized) 8.0 (php@8.0)"],
|
||||||
// We should see the about and quit items
|
// We should see the about and quit items
|
||||||
app.menuItems["mi_about".localized],
|
app.menuItems["mi_about".localized],
|
||||||
|
|||||||
@@ -24,9 +24,9 @@ class HomebrewPackageTest: XCTestCase {
|
|||||||
).first!
|
).first!
|
||||||
|
|
||||||
XCTAssertEqual(package.full_name, "php")
|
XCTAssertEqual(package.full_name, "php")
|
||||||
XCTAssertEqual(package.aliases.first!, "php@8.2")
|
XCTAssertEqual(package.aliases.first!, "php@8.4")
|
||||||
XCTAssertEqual(package.installed.contains(where: { installed in
|
XCTAssertEqual(package.installed.contains(where: { installed in
|
||||||
installed.version.starts(with: "8.2")
|
installed.version.starts(with: "8.4")
|
||||||
}), true)
|
}), true)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user