1
0
mirror of https://github.com/nicoverbruggen/phpmon.git synced 2026-03-30 16:30:09 +02:00
Commit Graph

142 Commits

Author SHA1 Message Date
ab34716273 Add a test that checks if language change works 2026-02-23 13:33:45 +01:00
67ad171700 Add tests for opening refactored views 2026-02-19 12:32:38 +01:00
9856840533 ♻️ Use discardableResult
- Removed ShellProtocol.quiet(), now that pipe() is discardable
- Detecting PHP versions is also discardable
- The system command is also discardable

This is a nice quality of life change overall, and gets rid of a couple
of silly `_ =` assignments.
2026-02-17 15:17:34 +01:00
251c53b7bb Conditional tests
- RealWebApiTest requires api.phpmon.test to be reachable or skips
- CommandTest requires php binary or skips
2026-02-16 16:15:41 +01:00
2fe58bcb5b ♻️ Ensure services status is known at launch
- Added shell pipe timeout (w/ new tests)
- Reworked ServicesManager to be blocking for startup (10s)
- Renamed queues to be more consistent
2026-01-30 13:26:04 +01:00
c48efcbe59 Ensure tests pass without waiting for initialization 2026-01-21 15:05:46 +01:00
c00add6500 ♻️ UITestCase.launch now waits for status item to be enabled 2026-01-21 14:51:18 +01:00
6c34f68d25 Fix UI test now that PHP 8.6 is included 2025-12-06 12:30:42 +01:00
8d91d18f79 Fix unit test w/ async 2025-12-06 12:25:25 +01:00
adb042ee83 Fix tests (unit tests now concurrently run in <5 sec) 2025-12-02 15:25:12 +01:00
564e47f66e ♻️ Add minimal Container boot 2025-12-02 15:21:05 +01:00
22c46e7e85 Improve FSNotifierTest 2025-11-29 23:27:02 +01:00
e968263568 ♻️ Refactor file watchers 2025-11-29 23:19:50 +01:00
ac28e4425b Use fake value for test 2025-11-29 18:44:28 +01:00
4b41704fdf ♻️ Improve debouncing mechanism 2025-11-29 14:38:28 +01:00
fc01755dfa ♻️ Rework FSNotifier and test it 2025-11-29 12:58:21 +01:00
3e1bd26b38 Document confirmed fix w/ Thread Sanitizer 2025-11-29 11:30:40 +01:00
a4cbbd28cc 🐛 Fix issue with RealShell.attach output being omitted 2025-11-29 10:53:12 +01:00
ccc6aaf06d 🐛 Fix issue with concurrent output in RealShell.attach 2025-11-29 10:25:07 +01:00
89a83bcb4e 🔧 Add TODO, bump build 2025-11-27 14:13:50 +01:00
e437b1c5c7 Update TestableConfiguration for UI Tests
- Added missing apps (to be refactored)
- Added output for `brew info shivammathur/php/php --json`
2025-11-27 14:13:20 +01:00
a61eea34fa ♻️ Update copyright messages 2025-11-23 17:37:46 +01:00
93e203be50 🐛 Use NSLock with PhpEnvironments 2025-11-23 17:31:59 +01:00
50dff89405 🔧 Bump build, use concurrency everywhere 2025-11-20 15:03:32 +01:00
24d2aa115e Fix UI tests w/ new WebApi interactions 2025-11-19 09:54:17 +01:00
d6fa3fc364 ♻️ Reworked how getting a CaskFile via URL works 2025-11-18 15:39:43 +01:00
ec9102618c RealShellTest runs .serialized tests (for timing) 2025-11-18 14:03:23 +01:00
ea6d7ca457 Add testable WebApi 2025-11-18 14:02:16 +01:00
7a60435421 ♻️ Improvements to Container
- RealShell is not reloaded during runtime (bugfix?)
- Container variables are now private(set)
- Initialization now also sets `webApi` property (new)
- It is only possible to run `bind` on a `Container` once now
  (previously known as `prepare`)
- Preparation for upcoming WebApi to replace `curl` command
  (for checking for updates)
2025-11-18 12:04:37 +01:00
38b3c108bf ♻️ Use replacing(with:) instead of .replacingOccurrences(of:with:)
The newer Swift native method is broadly supported and can properly
handle complex UTF-8 characters like emoji, whereas the old API does
not work correctly with emoji.

In most cases, this likely wouldn't have caused any issues but it does
make things a little cleaner now, and ensures we won't encounter emoji
trouble in the future.
2025-11-11 12:55:23 +01:00
c43f16d0d5 Fix unit tests 2025-10-16 19:00:02 +02:00
515f7d59a4 🔧 Enable only Unit Tests (for now) 2025-10-16 18:58:56 +02:00
fa403b5a99 ♻️ Refactor tests to Swift Testing 2025-10-16 15:57:41 +02:00
a314eef3f7 Unit tests can now run in parallel 2025-10-16 14:54:50 +02:00
a0e2907fae All tests pass again 2025-10-16 14:43:29 +02:00
546f01d55d ♻️ Update preferences 2025-10-16 14:13:47 +02:00
91d7a4bf44 ♻️ Cleanup phase 1 2025-10-16 14:04:53 +02:00
5b63211746 ♻️ All unit tests pass w/ DI container 2025-10-16 14:03:16 +02:00
79a23a2af2 ♻️ The app can build again (again)! 2025-10-16 11:48:16 +02:00
8af304979b 🚧 WIP: Test refactoring 2025-10-09 16:21:46 +02:00
85b12d1aec ♻️ Prevent unit tests from running concurrently
The way the testing classes are built with the singletons currently
prevents various test structs from being run at the same time.

I've adjusted the tests in the PHP Monitor EAP test configuration so
that they are not executed concurrently. This does slow down the test
suite but prevents odd crashes from individual tests interfering with
other tests.

It's not an ideal solution and I would like to address this in the
future, but I suspect this will be rather cumbersome. Since the app
does not actually suffer from this particular issue, this is something
worth investigating later.
2025-09-30 16:14:17 +02:00
db8df8575d ♻️ Migrate more tests to Swift Testing (3/?) 2025-09-29 17:59:33 +02:00
ceff52ed11 ♻️ Migrate more tests to Swift Testing (2/?) 2025-09-29 17:12:43 +02:00
5b27d9f0ea ♻️ Migrate more tests to Swift Testing 2025-09-29 16:39:32 +02:00
9c9720de42 🚧 Add fake API abstraction 2025-09-29 13:40:01 +02:00
cfb72d1781 All tests pass again 2025-09-26 21:58:19 +02:00
7973f12531 Adjust UI tests because Xcode is weird 2025-09-26 21:46:08 +02:00
af13913d9e Improve tests 2025-09-26 21:13:06 +02:00
13013f2513 ♻️ Lint tests, add background update check 2025-09-26 17:00:43 +02:00
5b6a804667 Fix some more tests 2025-09-25 17:38:00 +02:00