summaryrefslogtreecommitdiffstats
path: root/js/vendor/angular-ui/modules/directives/codemirror/test/codemirrorSpec.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/vendor/angular-ui/modules/directives/codemirror/test/codemirrorSpec.js')
-rw-r--r--js/vendor/angular-ui/modules/directives/codemirror/test/codemirrorSpec.js160
1 files changed, 0 insertions, 160 deletions
diff --git a/js/vendor/angular-ui/modules/directives/codemirror/test/codemirrorSpec.js b/js/vendor/angular-ui/modules/directives/codemirror/test/codemirrorSpec.js
deleted file mode 100644
index 5e6bf3d37..000000000
--- a/js/vendor/angular-ui/modules/directives/codemirror/test/codemirrorSpec.js
+++ /dev/null
@@ -1,160 +0,0 @@
-/*global beforeEach, afterEach, describe, it, inject, expect, module, spyOn, CodeMirror, angular, $*/
-/**
- * TODO Test all the CodeMirror events : cursorActivity viewportChange gutterClick focus blur scroll update.
- * with <textarea ui-codemirror="{onChange: doChange ,onCursorActivity: doSomething}" ng-model="foo">
- *
- */
-describe('uiCodemirror', function () {
- 'use strict';
-
- // declare these up here to be global to all tests
- var scope, $compile, $timeout, uiConfig = angular.module('ui.config');
-
- beforeEach(module('ui.directives'));
- beforeEach(function () {
- uiConfig.value('ui.config', {codemirror: {bar: 'baz'}});
- });
-
- // inject in angular constructs. Injector knows about leading/trailing underscores and does the right thing
- // otherwise, you would need to inject these into each test
- beforeEach(inject(function (_$rootScope_, _$compile_, _$timeout_) {
- scope = _$rootScope_.$new();
- $compile = _$compile_;
- $timeout = _$timeout_;
- }));
-
- afterEach(function () {
- uiConfig.value('ui.config', {}); // cleanup
- });
-
- describe('compiling this directive', function () {
- it('should throw an error if used against a non-textarea', function () {
- function compile() {
- $compile('<div ui-codemirror ng-model="foo"></div>')(scope);
- }
-
- expect(compile).toThrow();
- });
-
- it('should not throw an error when used against a textarea', function () {
- function compile() {
- $compile('<textarea ui-codemirror ng-model="foo"></textarea>')(scope);
- }
-
- expect(compile).not.toThrow();
- });
-
- it('should throw an error when no ngModel attribute defined', function () {
- function compile() {
- $compile('<textarea ui-codemirror></textarea>')(scope);
- }
-
- expect(compile).toThrow();
- });
-
- it('should watch the uiCodemirror attribute', function () {
- spyOn(scope, '$watch');
- $compile('<textarea ui-codemirror ng-model="foo"></textarea>')(scope);
- $timeout.flush();
- expect(scope.$watch).toHaveBeenCalled();
- });
-
- });
-
- describe('while spying on the CodeMirror instance', function () {
-
- var codemirror;
-
- beforeEach(function () {
- var fromTextArea = CodeMirror.fromTextArea;
- spyOn(CodeMirror, 'fromTextArea').andCallFake(function () {
- codemirror = fromTextArea.apply(this, arguments);
- return codemirror;
- });
- });
-
- describe('verify the directive options', function () {
- it('should include the passed options', function () {
- $compile('<textarea ui-codemirror="{oof: \'baar\'}" ng-model="foo"></textarea>')(scope);
- $timeout.flush();
- expect(CodeMirror.fromTextArea.mostRecentCall.args[1].oof).toEqual("baar");
- });
-
- it('should include the default options', function () {
- $compile('<textarea ui-codemirror ng-model="foo"></textarea>')(scope);
- $timeout.flush();
- expect(CodeMirror.fromTextArea.mostRecentCall.args[1].bar).toEqual('baz');
- });
- });
-
- describe('when uiRefresh is added', function () {
- it('should trigger the CodeMirror.refresh() method', function () {
- $compile('<textarea ui-codemirror ng-model="foo" ui-refresh="bar"></textarea>')(scope);
- $timeout.flush();
- spyOn(codemirror, 'refresh');
- scope.$apply('bar = true');
- $timeout.flush();
- expect(codemirror.refresh).toHaveBeenCalled();
- });
- });
-
-
- describe('when the IDE changes', function () {
- it('should update the model', function () {
- $compile('<textarea ui-codemirror ng-model="foo"></textarea>')(scope);
- scope.$apply("foo = 'bar'");
- $timeout.flush();
- var value = 'baz';
- codemirror.setValue(value);
- expect(scope.foo).toBe(value);
- });
- });
-
- describe('when the model changes', function () {
- it('should update the IDE', function () {
- var element = $compile('<textarea ui-codemirror ng-model="foo"></textarea>')(scope);
- scope.foo = 'bar';
- scope.$apply();
- $timeout.flush();
- expect(codemirror.getValue()).toBe(scope.foo);
- });
- });
-
- describe('when the model is undefined/null', function () {
- it('should update the IDE with an empty string', function () {
- var element = $compile('<textarea ui-codemirror ng-model="foo"></textarea>')(scope);
- scope.$apply();
- $timeout.flush();
- expect(scope.foo).toBe(undefined);
- expect(codemirror.getValue()).toBe('');
- scope.$apply('foo = "bar"');
- expect(scope.foo).toBe('bar');
- expect(codemirror.getValue()).toBe('bar');
- scope.$apply('foo = null');
- expect(scope.foo).toBe(null);
- expect(codemirror.getValue()).toBe('');
- });
- });
- });
-
- describe('when the model is an object or an array', function () {
- it('should throw an error', function () {
- function compileWithObject() {
- $compile('<textarea ui-codemirror ng-model="foo"></textarea>')(scope);
- $timeout.flush();
- scope.foo = {};
- scope.$apply();
- }
-
- function compileWithArray() {
- $compile('<textarea ui-codemirror ng-model="foo"></textarea>')(scope);
- $timeout.flush();
- scope.foo = [];
- scope.$apply();
- }
-
- expect(compileWithObject).toThrow();
- expect(compileWithArray).toThrow();
- });
- });
-}); \ No newline at end of file