// Generated by CoffeeScript 1.6.3 /* ownCloud - News @author Bernhard Posselt @copyright 2012 Bernhard Posselt dev@bernhard-posselt.com This library is free software; you can redistribute it and/or modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE License as published by the Free Software Foundation; either version 3 of the License, or any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU AFFERO GENERAL PUBLIC LICENSE for more details. You should have received a copy of the GNU Affero General Public License along with this library. If not, see . */ (function() { describe('SettingsController', function() { var _this = this; beforeEach(module('News')); beforeEach(module(function($provide) { _this.persistence = {}; $provide.value('Persistence', _this.persistence); })); beforeEach(inject(function($controller, FeedBusinessLayer, FolderBusinessLayer, ShowAll) { _this.FeedBusinessLayer = FeedBusinessLayer; _this.FolderBusinessLayer = FolderBusinessLayer; _this.ShowAll = ShowAll; _this.scope = {}; _this.replace = { '$scope': _this.scope, 'FolderBusinessLayer': { "import": jasmine.createSpy('import') } }; return _this.controller = $controller('SettingsController', _this.replace); })); it('should make FeedBl available', function() { return expect(_this.scope.feedBl).toBe(_this.FeedBl); }); it('should show an error if the xml import failed', function() { var xml; xml = 'test'; _this.replace.FolderBusinessLayer["import"].andCallFake(function() { throw new Error(); }); _this.scope["import"](xml); expect(_this.replace.FolderBusinessLayer["import"]).toHaveBeenCalledWith(xml); return expect(_this.scope.error).toBe(true); }); it('should set showall to true if importing', function() { var xml; xml = 'test'; _this.scope["import"](xml); return expect(_this.ShowAll.getShowAll()).toBe(true); }); it('should set showall to true if importing json', function() { var json; json = "[\"test\"]"; _this.scope.importGoogleReader(json); return expect(_this.ShowAll.getShowAll()).toBe(true); }); it('should show an error if the json import failed', function() { var json; json = 'test'; _this.scope.importGoogleReader(json); return expect(_this.scope.jsonError).toBe(true); }); return it('should import json', function() { var expected, json; _this.FeedBusinessLayer.importGoogleReader = jasmine.createSpy('googlereader'); json = "{\"test\": \"abc\"}"; _this.scope.importGoogleReader(json); expected = JSON.parse(json); return expect(_this.FeedBusinessLayer.importGoogleReader).toHaveBeenCalledWith(expected); }); }); }).call(this);