Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/CoreHome/angularjs/comparisons/comparisons.service.spec.js')
-rw-r--r--plugins/CoreHome/angularjs/comparisons/comparisons.service.spec.js80
1 files changed, 47 insertions, 33 deletions
diff --git a/plugins/CoreHome/angularjs/comparisons/comparisons.service.spec.js b/plugins/CoreHome/angularjs/comparisons/comparisons.service.spec.js
index 181d7dab4b..76cd614f4b 100644
--- a/plugins/CoreHome/angularjs/comparisons/comparisons.service.spec.js
+++ b/plugins/CoreHome/angularjs/comparisons/comparisons.service.spec.js
@@ -18,6 +18,16 @@
var $location;
var oldInjectorFn;
var $window;
+ var oldWindowHash;
+
+ function setHash(search) {
+ $location.search(search);
+ window.location.hash = '#?' + search;
+ }
+
+ beforeEach(function () {
+ oldWindowHash = window.location.hash;
+ });
beforeEach(module('piwikApp.service'));
beforeEach(module(function($provide) {
@@ -86,9 +96,13 @@
$httpBackend.verifyNoOutstandingRequest ();
});
+ afterEach(function () {
+ window.location.hash = oldWindowHash;
+ });
+
describe('#getComparisons()', function () {
it('should return all comparisons in URL', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.getComparisons()).to.deep.equal([
@@ -133,7 +147,7 @@
});
it('should return base params if there are no comparisons', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg');
$rootScope.$apply();
expect(piwikComparisonsService.getComparisons()).to.deep.equal([
@@ -156,7 +170,7 @@
});
it('should return nothing if comparison is not enabled for the page', function () {
- $location.search('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.getComparisons()).to.deep.equal([]);
@@ -165,27 +179,27 @@
describe('#removeSegmentComparison()', function () {
it('should remove an existing segment comparison from the URL', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
piwikComparisonsService.removeSegmentComparison(1);
- expect($location.url()).to.equal('?category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates%5B%5D=2018-03-04&comparePeriods%5B%5D=week&compareSegments%5B%5D=comparedsegment&compareSegments%5B%5D=&updated=1#%3Fdate=2012-01-01,2012-01-02&period=range&comparePeriods%255B%255D=week&compareDates%255B%255D=2018-03-04');
+ expect($location.url()).to.equal('?category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates%5B%5D=2018-03-04&comparePeriods%5B%5D=week&compareSegments%5B%5D=comparedsegment&compareSegments%5B%5D=&updated=1#%3Fcategory=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates%5B%5D=2018-03-04&comparePeriods%5B%5D=week&compareSegments%5B%5D=comparedsegment&compareSegments%5B%5D=');
});
it('should change the base comparison if the first segment is removed', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
piwikComparisonsService.removeSegmentComparison(0);
- expect($location.url()).to.equal('?category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=comparedsegment&compareDates%5B%5D=2018-03-04&comparePeriods%5B%5D=week&compareSegments%5B%5D=comparedsegment&compareSegments%5B%5D=&updated=1#%3Fdate=2012-01-01,2012-01-02&period=range&segment=comparedsegment&comparePeriods%255B%255D=week&compareDates%255B%255D=2018-03-04');
+ expect($location.url()).to.equal('?category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=comparedsegment&compareDates%5B%5D=2018-03-04&comparePeriods%5B%5D=week&compareSegments%5B%5D=comparedsegment&compareSegments%5B%5D=&updated=1#%3Fcategory=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=comparedsegment&compareDates%5B%5D=2018-03-04&comparePeriods%5B%5D=week&compareSegments%5B%5D=comparedsegment&compareSegments%5B%5D=');
});
});
describe('#addSegmentComparison()', function () {
it('should add a new segment comparison to the URL', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
$rootScope.$apply();
piwikComparisonsService.addSegmentComparison({
@@ -201,7 +215,7 @@
});
it('should add the all visits segment to the URL', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
$rootScope.$apply();
piwikComparisonsService.addSegmentComparison({
@@ -217,7 +231,7 @@
});
it('should add a new period comparison to the URL', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=&compareSegments[]=comparedsegment');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=&compareSegments[]=comparedsegment');
$rootScope.$apply();
piwikComparisonsService.addSegmentComparison({
@@ -233,7 +247,7 @@
});
it('should add another period comparison to the URL if one is already there', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
$rootScope.$apply();
piwikComparisonsService.addSegmentComparison({
@@ -252,21 +266,21 @@
describe('#isComparisonEnabled()', function () {
it('should return true if comparison is enabled for the page', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
$rootScope.$apply();
expect(piwikComparisonsService.isComparisonEnabled()).to.be.true;
});
it('should return false if comparison is disabled for the page', function () {
- $location.search('category=MyModule2&subcategory=disabledPage2&date=2018-01-02&period=day&segment=&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
+ setHash('category=MyModule2&subcategory=disabledPage2&date=2018-01-02&period=day&segment=&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
$rootScope.$apply();
expect(piwikComparisonsService.isComparisonEnabled()).to.be.false;
});
it('should return false if comparison is disabled for the entire category', function () {
- $location.search('category=MyModule3&subcategory=enabledPage&date=2018-01-02&period=day&segment=&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
+ setHash('category=MyModule3&subcategory=enabledPage&date=2018-01-02&period=day&segment=&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment');
$rootScope.$apply();
expect(piwikComparisonsService.isComparisonEnabled()).to.be.false;
@@ -275,7 +289,7 @@
describe('#getSegmentComparisons()', function () {
it('should return the segment comparisons only', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.getSegmentComparisons()).to.be.deep.equal([
@@ -286,7 +300,7 @@
});
it('should return nothing if comparison is not enabled', function () {
- $location.search('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.getSegmentComparisons()).to.be.deep.equal([]);
@@ -295,7 +309,7 @@
describe('#getPeriodComparisons()', function () {
it('should return the period comparisons only', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.getPeriodComparisons()).to.be.deep.equal([
@@ -319,7 +333,7 @@
});
it('should return nothing if comparison is not enabled', function () {
- $location.search('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.getPeriodComparisons()).to.be.deep.equal([]);
@@ -328,7 +342,7 @@
describe('#getAllComparisonSeries()', function () {
it('should return all individual comparison serieses', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.getAllComparisonSeries()).to.be.deep.equal([
@@ -390,7 +404,7 @@
});
it('should return nothing if comparison is not enabled', function () {
- $location.search('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.getAllComparisonSeries()).to.be.deep.equal([]);
@@ -399,40 +413,40 @@
describe('#isComparing()', function () {
it('should return true if there are comparison parameters present', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.isComparing()).to.be.true;
});
it('should return true if there are segment comparisons but no period comparisons', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.isComparing()).to.be.true;
});
it('should return true if there are period comparisons but no segment comparisons', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week');
$rootScope.$apply();
expect(piwikComparisonsService.isComparing()).to.be.true;
});
it('should return false if there are no comparison parameters present', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg');
$rootScope.$apply();
expect(piwikComparisonsService.isComparing()).to.be.false;
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day');
$rootScope.$apply();
expect(piwikComparisonsService.isComparing()).to.be.false;
});
it('should return false if comparison is not enabled', function () {
- $location.search('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.isComparing()).to.be.false;
@@ -441,28 +455,28 @@
describe('#isComparingPeriods()', function () {
it('should return true if there are periods being compared', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.isComparingPeriods()).to.be.true;
});
it('should return false if there are no periods being compared, just segments', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.isComparingPeriods()).to.be.false;
});
it('should return false if there is nothing being compared', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg');
$rootScope.$apply();
expect(piwikComparisonsService.isComparingPeriods()).to.be.false;
});
it('should return false if comparing is not enabled', function () {
- $location.search('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=disabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.isComparingPeriods()).to.be.false;
@@ -471,7 +485,7 @@
describe('#getIndividualComparisonRowIndices()', function () {
it('should calculate the segment/period index from the given series index', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.getIndividualComparisonRowIndices(3)).to.be.deep.equal({
@@ -488,7 +502,7 @@
describe('#getComparisonSeriesIndex()', function () {
it('should return the comparison series index from the given segment & period indices', function () {
- $location.search('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
+ setHash('category=MyModule1&subcategory=enabledPage&date=2018-01-02&period=day&segment=abcdefg&compareDates[]=2018-03-04&comparePeriods[]=week&compareSegments[]=comparedsegment&compareSegments[]=');
$rootScope.$apply();
expect(piwikComparisonsService.getComparisonSeriesIndex(1, 1)).to.be.deep.equal(4);
@@ -497,4 +511,4 @@
});
});
});
-})(); \ No newline at end of file
+})();