35 lines
958 B
JavaScript
35 lines
958 B
JavaScript
|
describe('Directive vnId', () => {
|
||
|
let $scope;
|
||
|
let $element;
|
||
|
let compile;
|
||
|
|
||
|
beforeEach(() => {
|
||
|
angular.mock.module('client');
|
||
|
});
|
||
|
|
||
|
compile = _element => {
|
||
|
inject(($compile, $rootScope) => {
|
||
|
$scope = $rootScope.$new();
|
||
|
$element = angular.element(_element);
|
||
|
$compile($element)($scope);
|
||
|
$scope.$digest();
|
||
|
});
|
||
|
};
|
||
|
|
||
|
it(`should throw an error when there's no id defined`, () => {
|
||
|
let html = `<form vn-id=""></form>`;
|
||
|
|
||
|
expect(function errorExpected() {
|
||
|
compile(html);
|
||
|
}).toThrow(new Error(`vnId: Attribute can't be null`));
|
||
|
});
|
||
|
|
||
|
it(`should throw an error when these's no controller defined in $element[0]`, () => {
|
||
|
let html = `<div vn-id="1"></div>`;
|
||
|
|
||
|
expect(function errorExpected() {
|
||
|
compile(html);
|
||
|
}).toThrow(new Error(`vnId: Can't find controller for element '1'`));
|
||
|
});
|
||
|
});
|