mirror of
https://github.com/tiennm99/coolify.git
synced 2026-08-20 06:23:23 +00:00
Add reusable domain URL parsing and input components, expose per-domain redirect and indexing controls, and improve application and service domain layouts across responsive breakpoints.
31 lines
930 B
PHP
31 lines
930 B
PHP
<?php
|
|
|
|
use App\Support\DomainUrlParts;
|
|
|
|
it('composes a domain URL from segmented fields', function () {
|
|
expect(DomainUrlParts::compose('https', 'app.example.com', '3000', 'api/v3'))
|
|
->toBe('https://app.example.com:3000/api/v3');
|
|
});
|
|
|
|
it('splits a domain URL while preserving its path query and fragment', function () {
|
|
expect(DomainUrlParts::split('http://app.example.com:8080/api?v=1#docs'))->toBe([
|
|
'scheme' => 'http',
|
|
'host' => 'app.example.com',
|
|
'port' => '8080',
|
|
'path' => '/api?v=1#docs',
|
|
]);
|
|
});
|
|
|
|
it('defaults empty values for an invalid URL', function () {
|
|
expect(DomainUrlParts::split(''))->toBe([
|
|
'scheme' => 'https',
|
|
'host' => '',
|
|
'port' => '',
|
|
'path' => '',
|
|
]);
|
|
});
|
|
|
|
it('preserves an explicitly configured default port', function () {
|
|
expect(DomainUrlParts::split('https://app.example.com:443')['port'])->toBe('443');
|
|
});
|