|
|
|
'use strict'
|
|
|
|
/* global describe, it, inject, expect, beforeEach, jasmine */
|
|
|
|
|
|
|
|
describe('EmbedModalController', function () {
|
|
|
|
beforeEach(module('myApp.controllers'))
|
|
|
|
|
|
|
|
beforeEach(function () {
|
|
|
|
this.AppWebPagesManager = {
|
|
|
|
wrapForFull: jasmine.createSpy('wrapForFull')
|
|
|
|
}
|
|
|
|
|
|
|
|
this.ErrorService = {
|
|
|
|
input: {},
|
|
|
|
confirm: function (message) {
|
|
|
|
this.input = message
|
|
|
|
return {
|
|
|
|
then: function (f) {
|
|
|
|
f()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
this.PeersSelectService = {
|
|
|
|
input: {},
|
|
|
|
selectPeer: function (options) {
|
|
|
|
this.input = options
|
|
|
|
return {
|
|
|
|
then: function (f) {
|
|
|
|
f('Peerselected')
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
this.AppMessagesManager = {
|
|
|
|
deleteMessages: jasmine.createSpy('deleteMessages')
|
|
|
|
}
|
|
|
|
|
|
|
|
this.$modalInstance = {
|
|
|
|
dismiss: jasmine.createSpy('dismissModal')
|
|
|
|
}
|
|
|
|
|
|
|
|
inject(function (_$controller_, _$rootScope_) {
|
|
|
|
this.$rootScope = _$rootScope_
|
|
|
|
this.$rootScope.$broadcast = jasmine.createSpy('$broadcast')
|
|
|
|
this.$scope = this.$rootScope.$new()
|
|
|
|
this.$scope.webpageID = 'www.notRelevant.com'
|
|
|
|
|
|
|
|
_$controller_('EmbedModalController', {
|
|
|
|
$q: {},
|
|
|
|
$scope: this.$scope,
|
|
|
|
$rootScope: this.$rootScope,
|
|
|
|
$modalInstance: this.$modalInstance,
|
|
|
|
PeersSelectService: this.PeersSelectService,
|
|
|
|
AppMessagesManager: this.AppMessagesManager,
|
|
|
|
AppPeersManager: {},
|
|
|
|
AppPhotosManager: {},
|
|
|
|
AppWebPagesManager: this.AppWebPagesManager,
|
|
|
|
ErrorService: this.ErrorService
|
|
|
|
})
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
|
|
|
// define tests
|
|
|
|
it('sets the embeded webpage in the scope', function (done) {
|
|
|
|
expect(this.$scope.nav).toEqual({})
|
|
|
|
expect(this.AppWebPagesManager.wrapForFull).toHaveBeenCalledWith(this.$scope.webpageID)
|
|
|
|
done()
|
|
|
|
})
|
|
|
|
|
|
|
|
it('forwards a message with an embeded link', function (done) {
|
|
|
|
this.$scope.messageID = 'id1234234'
|
|
|
|
var messageID = this.$scope.messageID
|
|
|
|
|
|
|
|
this.$scope.forward()
|
|
|
|
expect(this.PeersSelectService.input).toEqual({canSend: true})
|
|
|
|
expect(this.$scope.$broadcast).toHaveBeenCalledWith('history_focus', {
|
|
|
|
peerString: 'Peerselected',
|
|
|
|
attachment: {
|
|
|
|
_: 'fwd_messages',
|
|
|
|
id: [messageID]
|
|
|
|
}
|
|
|
|
})
|
|
|
|
done()
|
|
|
|
})
|
|
|
|
|
|
|
|
it('deletes a message with an embeded link', function (done) {
|
|
|
|
this.$scope.messageID = 'id979565673'
|
|
|
|
|
|
|
|
this.$scope.delete()
|
|
|
|
expect(this.ErrorService.input).toEqual({type: 'MESSAGE_DELETE'})
|
|
|
|
expect(this.AppMessagesManager.deleteMessages).toHaveBeenCalledWith([this.$scope.messageID])
|
|
|
|
done()
|
|
|
|
})
|
|
|
|
})
|