Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
db54ede
a
WojcikMike Dec 14, 2016
caa71e6
Adding message page, for better content sharing (sending link to a me…
WojcikMike Oct 3, 2016
0510066
Fixing an issue of not selecting menu item when on message page
WojcikMike Oct 4, 2016
0f8168e
Adding unarchive button to message screen
WojcikMike Oct 10, 2016
0ca2996
Changing the methods to support promise.
WojcikMike Oct 12, 2016
2150182
Adding tests to controller
WojcikMike Oct 12, 2016
255a192
fixing tests
WojcikMike Oct 13, 2016
b98ab22
Fixing tests to run in phantomjs
WojcikMike Oct 31, 2016
5fb2115
Setting minimum SC version. adding support for events
WojcikMike Oct 31, 2016
c7ae31d
Supporting the flow of the message
WojcikMike Oct 31, 2016
cdfa1c6
Adding Mock view for Sergio to test the 1 page message
WojcikMike Jan 31, 2017
043418c
Initial layout of message page
sergioc Feb 1, 2017
c190348
More message type view tweaks
sergioc Feb 2, 2017
b66527d
re-configured message list click hot spots tweaks
sergioc Feb 3, 2017
36fbd41
* Making Failed message row to inside a tag that takes you to single …
WojcikMike Feb 6, 2017
a8cdf6e
Changing cursor to pointer on input div
WojcikMike Feb 6, 2017
0b04c13
Changing panels to behave like tabs, marking with class active tab
WojcikMike Feb 6, 2017
0b02116
- wrap up message list UI update
sergioc Feb 6, 2017
21b652f
UI updates
sergioc Feb 7, 2017
e7dc4cd
Added SI btn icon
sergioc Feb 7, 2017
4bb4858
UI Fixes
sergioc Feb 8, 2017
4be86ca
Adding additional information related to archive messages
WojcikMike Feb 8, 2017
70aa40f
Handling static section that is displayed when the message is not there
WojcikMike Feb 8, 2017
116421f
Improved copy of inexistant message state message, small UI tweaks
sergioc Feb 8, 2017
ca76842
tweaks
sergioc Feb 9, 2017
d36ca30
Preventing click propagation from confirm-click panel
WojcikMike Feb 9, 2017
c4e583f
Fixing issue of refreshing archived message
WojcikMike Feb 9, 2017
17ba1a9
tweak msg group action link behavior
sergioc Feb 9, 2017
034f645
Change the route for the feature to work after William added deep lin…
WojcikMike Feb 9, 2017
bc7144d
Fixing tests to pass
WojcikMike Feb 15, 2017
4d87940
Addressing Williams comments
WojcikMike Feb 15, 2017
5867da0
Fixing checkbox issue on the archive screen
WojcikMike Feb 16, 2017
6a25123
Fixed pending retries list
sergioc Feb 16, 2017
d9730c1
making changes to align pending retries impl with archived and all me…
WojcikMike Feb 16, 2017
0a7903f
Neaten up Service Control promises
WilliamBZA Feb 17, 2017
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions src/ServicePulse.Host.Tests/ServicePulse.Host.Tests.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@
<Content Include="tests\js\jasmine_test_example_tests.js" />
<Content Include="tests\js\angular-mocks.js" />
<Content Include="tests\js\views\failed_groups\controller.spec.js" />
<Content Include="tests\js\views\message\controller.spec.js" />
<Content Include="tests\js\views\pending_retries\controller.spec.js" />
<Content Include="tests\js\views\redirect\edit\controller.spec.js" />
<Content Include="tests\js\_references.js" />
Expand Down
14 changes: 8 additions & 6 deletions src/ServicePulse.Host.Tests/SpecsRunner.html
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,6 @@
<script src="scripts/jasmine/jasmine-html.js"></script>
<script src="scripts/jasmine/boot.js"></script>

<script src="tests/js/angular.js"></script>


<script src="tests/js/angular-mocks.js"></script>

<!-- Vendor -->
<script src="../servicepulse.host/app/lib/jQuery/jquery.min.js"></script>
<script src="../servicepulse.host/app/lib/jQuery/jquery.signalR-1.1.3.min.js"></script>
Expand All @@ -33,6 +28,8 @@
<script src="../servicepulse.host/app/lib/moment.min.js"></script>
<script src="../servicepulse.host/app/lib/angular/angular-momentjs.js"></script>
<script src="../servicepulse.host/app/lib/angular-ui-select/select.js"></script>

<script src="tests/js/angular-mocks.js"></script> <!--Needs to be loaded after angular.js-->

<!-- App -->
<script src="../servicepulse.host/app/js/app.js"></script>
Expand Down Expand Up @@ -129,13 +126,18 @@
<script src="../servicepulse.host/app/js/views/pending_retries/controller.js"></script>
<script src="../servicepulse.host/app/js/views/pending_retries/route.js"></script>
<script src="../servicepulse.host/app/js/views/pending_retries/service.js"></script>


<!-- Message -->
<script src="../servicepulse.host/app/js/views/message/controller.js"></script>
<script src="../servicepulse.host/app/js/views/message/route.js"></script>

<!-- test files -->
<script src="tests/js/configuration/configuration.spec.js"></script>
<script src="tests/js/services/services.spec.js"></script>

<script src="tests/js/views/redirect/edit/controller.spec.js"></script>
<script src="tests/js/views/pending_retries/controller.spec.js"></script>
<script src="tests/js/views/message/controller.spec.js"></script>
<script src="tests/js/views/failed_groups/controller.spec.js"></script>

</head>
Expand Down
8 changes: 6 additions & 2 deletions src/ServicePulse.Host.Tests/tests/js/_references.js
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,11 @@
/// <reference path="../../../servicepulse.host/app/js/views/configuration/configuration.service.js" />
/// <!-- Redirects -->
/// <reference path="../../../servicepulse.host/app/js/views/redirect/controller.js" />
/// <reference path="../../../servicepulse.host/app/js/views/views/redirect/route.js" />
/// <reference path="../../../servicepulse.host/app/js/views/views/redirect/service.js" />
/// <reference path="../../../servicepulse.host/app/js/views/redirect/route.js" />
/// <reference path="../../../servicepulse.host/app/js/views/redirect/service.js" />
/// <reference path="../../../servicepulse.host/app/js/views/redirect/edit/controller.js" />
/// <!-- Message -->
/// <reference path="../../../servicepulse.host/app/js/views/message/controller.js" />
/// <reference path="../../../servicepulse.host/app/js/views/message/route.js" />

/// <reference path="angular-mocks.js" />
192 changes: 192 additions & 0 deletions src/ServicePulse.Host.Tests/tests/js/views/message/controller.spec.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,192 @@
describe('messagesController', function () {

beforeEach(function () {
module('sc');
});

var $controller;

beforeEach(inject(function (_$controller_) {
$controller = _$controller_;
}));

describe('when retrying a message', function () {
var controller, serviceControlService, root, q;

beforeEach(inject(function ($rootScope, $q) {
root = $rootScope;
q = $q;

serviceControlService = {
retryFailedMessages: function() {},
getFailedMessageById: function() {
return $q.defer().promise;
}
};

controller = $controller("messagesController", {
$scope: $rootScope.$new(),
$routeParams: { messageId: "some-message-id" },
scConfig: null,
toastService: { showInfo: function () {} },
serviceControlService: serviceControlService,
archivedMessageService: null,
notifyService: function () { return { subscribe: function () { } } },
sharedDataService: {
getConfiguration () {
return { data_retention: { error_retention_period: 7 } };
}
}
});
}));

it('and the retry succeeds, the message is marked as resolved', function () {
var deferred = q.defer();
spyOn(serviceControlService, 'retryFailedMessages').and.callFake(function () {
return deferred.promise;
});

controller.message = { message_id: 1, retried: false };
controller.retryMessage();

root.$apply(function () { deferred.resolve('Remote call result') });

expect(controller.message.retried).toEqual(true);
expect(serviceControlService.retryFailedMessages).toHaveBeenCalled();
});

it('and the retry fails, the message is not marked as resolved', function () {
var deferred = q.defer();
spyOn(serviceControlService, 'retryFailedMessages').and.callFake(function () {
return deferred.promise;
});

controller.message = { message_id: 1, retried: false };
controller.retryMessage();

root.$apply(function () { deferred.reject('Remote call result') });

expect(controller.message.retried).toEqual(false);
expect(serviceControlService.retryFailedMessages).toHaveBeenCalled();
});
});

describe('when archiving a message', function () {
var controller, serviceControlService, root;

beforeEach(inject(function ($rootScope, $q) {
root = $rootScope;

serviceControlService = {
archiveFailedMessages: function () { },
getFailedMessageById: function () {
return $q.defer().promise;
}
};
controller = $controller('messagesController', {
$scope: {},
$routeParams: { messageId: "some-message-id" },
scConfig: null,
toastService: { showInfo: function () { } },
serviceControlService: serviceControlService,
archivedMessageService: null,
notifyService: function () { return { subscribe: function () { } } },
sharedDataService: {
getConfiguration () {
return { data_retention: { error_retention_period: 7 } };
}
}
});
}));

it('and the archive succeeds, the message is marked as archived', inject(function ($q) {
var deferred = $q.defer();
spyOn(serviceControlService, 'archiveFailedMessages').and.callFake(function () {
return deferred.promise;
});

controller.message = { message_id: 1, archived: false };
controller.archiveMessage();

root.$apply(function () { deferred.resolve('Remote call result') });

expect(controller.message.archived).toEqual(true);
expect(serviceControlService.archiveFailedMessages).toHaveBeenCalled();
}));

it('and the archive failed, the message is not marked as archived', inject(function ($q) {
var deferred = $q.defer();
spyOn(serviceControlService, 'archiveFailedMessages').and.callFake(function () {
return deferred.promise;
});

controller.message = { message_id: 1, archived: false };
controller.archiveMessage();

root.$apply(function () { deferred.reject('Remote call result') });

expect(controller.message.archived).toEqual(false);
expect(serviceControlService.archiveFailedMessages).toHaveBeenCalled();
}));
});

describe('when unarchiving a message', function () {
var controller, serviceControlService, root, archivedMessageService, q;

beforeEach(inject(function ($rootScope, $q) {
root = $rootScope;
q = $q;
serviceControlService = {
getFailedMessageById: function () {
return $q.defer().promise;
}
};
archivedMessageService = { restoreMessageFromArchive: function () { } };

controller = $controller('messagesController', {
$scope: {},
$routeParams: { messageId: "some-message-id" },
scConfig: null,
toastService: { showInfo: function () { } },
serviceControlService: serviceControlService,
archivedMessageService: archivedMessageService,
notifyService: function () { return { subscribe: function () { } } },
sharedDataService: {
getConfiguration () {
return { data_retention: { error_retention_period: 7 } };
}
}
});
}));

it('and the unarchive succeeds, the message is not marked as archived', function () {
var deferred = q.defer();
spyOn(archivedMessageService, 'restoreMessageFromArchive').and.callFake(function () {
return deferred.promise;
});

controller.message = { message_id: 1, archived: true };
controller.unarchiveMessage();

root.$apply(function () { deferred.resolve('Remote call result') });

expect(controller.message.archived).toEqual(false);
expect(archivedMessageService.restoreMessageFromArchive).toHaveBeenCalled();
});

it('and the unarchive fails, the message is still marked as archived', function () {
var deferred = q.defer();
spyOn(archivedMessageService, 'restoreMessageFromArchive').and.callFake(function () {
return deferred.promise;
});

controller.message = { message_id: 1, archived: true };
controller.unarchiveMessage();

root.$apply(function () { deferred.reject('Remote call result') });

expect(controller.message.archived).toEqual(true);
expect(archivedMessageService.restoreMessageFromArchive).toHaveBeenCalled();
});
});
});
3 changes: 3 additions & 0 deletions src/ServicePulse.Host/ServicePulse.Host.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,9 @@
<Content Include="app\js\services\factory.listener.js" />
<Content Include="app\js\services\factory.notifier.js" />
<Content Include="app\js\services\service.toast.js" />
<Content Include="app\js\views\message\controller.js" />
<Content Include="app\js\views\message\route.js" />
<Content Include="app\js\views\message\messages-view.html" />
<Content Include="app\js\views\pending_retries\service.js" />
<Content Include="app\js\views\redirect\controller.js" />
<Content Include="app\js\views\redirect\edit\controller.js" />
Expand Down
Loading