TF-1606 Add method toQualifiedUrl()` handle relative url

(cherry picked from commit 865055f063391a5f2ae3ad7d9c82b6e45578cb48)
This commit is contained in:
dab246
2023-03-20 16:15:59 +07:00
committed by Dat Vu
parent 3f4fa72732
commit 6bd48aef7b
3 changed files with 98 additions and 0 deletions
@@ -0,0 +1,59 @@
import 'package:core/presentation/extensions/uri_extension.dart';
import 'package:flutter_test/flutter_test.dart';
void main() {
group('method convertToQualifiedUrl test', () {
test('convertToQualifiedUrl() should return qualified url when baseUrl is `https://domain.com` and sourceUrl is `https://domain.com/jmap`', () async {
final baseUrl = Uri.parse('https://domain.com');
final sourceUrl = Uri.parse('https://domain.com/jmap');
final qualifiedUrlExpected = Uri.parse('https://domain.com/jmap');
final qualifiedUrlResult = sourceUrl.toQualifiedUrl(baseUrl: baseUrl);
expect(qualifiedUrlResult, equals(qualifiedUrlExpected));
});
test('convertToQualifiedUrl() should return qualified url when baseUrl is `https://domain.com` and sourceUrl is `/jmap/`', () async {
final baseUrl = Uri.parse('https://domain.com');
final sourceUrl = Uri.parse('/jmap/');
final qualifiedUrlExpected = Uri.parse('https://domain.com/jmap');
final qualifiedUrlResult = sourceUrl.toQualifiedUrl(baseUrl: baseUrl);
expect(qualifiedUrlResult, equals(qualifiedUrlExpected));
});
test('convertToQualifiedUrl() should return qualified url when baseUrl is `https://domain.com` and sourceUrl is `/jmap`', () async {
final baseUrl = Uri.parse('https://domain.com');
final sourceUrl = Uri.parse('/jmap');
final qualifiedUrlExpected = Uri.parse('https://domain.com/jmap');
final qualifiedUrlResult = sourceUrl.toQualifiedUrl(baseUrl: baseUrl);
expect(qualifiedUrlResult, equals(qualifiedUrlExpected));
});
test('convertToQualifiedUrl() should return qualified url when baseUrl is `https://domain.com/jmap` and sourceUrl is empty', () async {
final baseUrl = Uri.parse('https://domain.com/jmap');
final sourceUrl = Uri.parse('');
final qualifiedUrlExpected = Uri.parse('https://domain.com/jmap');
final qualifiedUrlResult = sourceUrl.toQualifiedUrl(baseUrl: baseUrl);
expect(qualifiedUrlResult, equals(qualifiedUrlExpected));
});
test('convertToQualifiedUrl() should return qualified url when baseUrl is `https://domain.com/jmap` and sourceUrl is `/`', () async {
final baseUrl = Uri.parse('https://domain.com/jmap');
final sourceUrl = Uri.parse('/');
final qualifiedUrlExpected = Uri.parse('https://domain.com/jmap');
final qualifiedUrlResult = sourceUrl.toQualifiedUrl(baseUrl: baseUrl);
expect(qualifiedUrlResult, equals(qualifiedUrlExpected));
});
});
}