fix(router): Route.isActive also compares query params (#12321)
This commit is contained in:

committed by
Victor Berchet

parent
e5a753e111
commit
785b7b640e
@ -21,6 +21,24 @@ describe('UrlTree', () => {
|
||||
expect(containsTree(t2, t1, true)).toBe(true);
|
||||
});
|
||||
|
||||
it('should return true when queryParams are the same', () => {
|
||||
const t1 = serializer.parse('/one/two?test=1&page=5');
|
||||
const t2 = serializer.parse('/one/two?test=1&page=5');
|
||||
expect(containsTree(t1, t2, true)).toBe(true);
|
||||
});
|
||||
|
||||
it('should return false when queryParams are not the same', () => {
|
||||
const t1 = serializer.parse('/one/two?test=1&page=5');
|
||||
const t2 = serializer.parse('/one/two?test=1');
|
||||
expect(containsTree(t1, t2, true)).toBe(false);
|
||||
});
|
||||
|
||||
it('should return false when containee is missing queryParams', () => {
|
||||
const t1 = serializer.parse('/one/two?page=5');
|
||||
const t2 = serializer.parse('/one/two');
|
||||
expect(containsTree(t1, t2, true)).toBe(false);
|
||||
});
|
||||
|
||||
it('should return false when paths are not the same', () => {
|
||||
const t1 = serializer.parse('/one/two(right:three)');
|
||||
const t2 = serializer.parse('/one/two2(right:three)');
|
||||
@ -65,7 +83,7 @@ describe('UrlTree', () => {
|
||||
expect(containsTree(t1, t2, false)).toBe(false);
|
||||
});
|
||||
|
||||
it('should return containee has segments that the container does not have', () => {
|
||||
it('should return false containee has segments that the container does not have', () => {
|
||||
const t1 = serializer.parse('/one/(two//left:three)');
|
||||
const t2 = serializer.parse('/one/(two//right:four)');
|
||||
expect(containsTree(t1, t2, false)).toBe(false);
|
||||
@ -76,6 +94,42 @@ describe('UrlTree', () => {
|
||||
const t2 = serializer.parse('/one/two');
|
||||
expect(containsTree(t1, t2, false)).toBe(false);
|
||||
});
|
||||
|
||||
it('should return true when queryParams are the same', () => {
|
||||
const t1 = serializer.parse('/one/two?test=1&page=5');
|
||||
const t2 = serializer.parse('/one/two?test=1&page=5');
|
||||
expect(containsTree(t1, t2, false)).toBe(true);
|
||||
});
|
||||
|
||||
it('should return true when container contains containees queryParams', () => {
|
||||
const t1 = serializer.parse('/one/two?test=1&page=5');
|
||||
const t2 = serializer.parse('/one/two?test=1');
|
||||
expect(containsTree(t1, t2, false)).toBe(true);
|
||||
});
|
||||
|
||||
it('should return true when containee does not have queryParams', () => {
|
||||
const t1 = serializer.parse('/one/two?page=5');
|
||||
const t2 = serializer.parse('/one/two');
|
||||
expect(containsTree(t1, t2, false)).toBe(true);
|
||||
});
|
||||
|
||||
it('should return false when containee has but container does not have queryParams', () => {
|
||||
const t1 = serializer.parse('/one/two');
|
||||
const t2 = serializer.parse('/one/two?page=1');
|
||||
expect(containsTree(t1, t2, false)).toBe(false);
|
||||
});
|
||||
|
||||
it('should return false when containee has different queryParams', () => {
|
||||
const t1 = serializer.parse('/one/two?page=5');
|
||||
const t2 = serializer.parse('/one/two?test=1');
|
||||
expect(containsTree(t1, t2, false)).toBe(false);
|
||||
});
|
||||
|
||||
it('should return false when containee has more queryParams than container', () => {
|
||||
const t1 = serializer.parse('/one/two?page=5');
|
||||
const t2 = serializer.parse('/one/two?page=5&test=1');
|
||||
expect(containsTree(t1, t2, false)).toBe(false);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
Reference in New Issue
Block a user