UNPKG

angie

Version:

Angie: A Module-Based NodeJS Web Application Framework in ES6

80 lines (76 loc) 3 kB
// Test Modules import { expect } from 'chai'; import simple, { mock } from 'simple-mock'; // Angie Modules import $compile from '../../../src/factories/$Compile'; const TEST_ENV = global.TEST_ENV || 'src', $$ngieIfFactory = require(`../../../${TEST_ENV}/directives/ngie-if`); describe('$$ngieIfFactory', function() { it('test $$ngieIfFactory returns', function() { let obj = $$ngieIfFactory(); expect(obj.priority).to.eq(1); expect(obj.restrict).to.eq('A'); expect(obj.link).to.be.a.function; }); describe('link', function() { let template, templateFn, scope; beforeEach(function() { template = '<div><div class="test" ngie-if="test"></div></div>'; templateFn = $compile(template); scope = { test: true }; }); it('test condition found in link, attr removed', function() { templateFn(scope).then(function(t) { expect(t).to.eq('<div><div class="test"></div></div>'); }); }); it('test condition found in link, attr removed, content', function() { $compile( '<div><div class="test" ngie-if="test">test</div></div>' )(scope).then(function(t) { expect(t).to.eq('<div><div class="test">test</div></div>'); }); }); it('test condition found in link, attr removed, scope content', function() { scope.test1 = 'test'; $compile( '<div><div class="test" ngie-if="test">{{test1}}</div></div>' )(scope).then(function(t) { expect(t).to.eq('<div><div class="test">test</div></div>'); }); } ); it('test condition not found, element removed', function() { delete scope.test; templateFn(scope).then(function(t) { expect(t).to.eq('<div></div>'); }); }); it('test condition false, element removed', function() { scope.test = false; templateFn(scope).then(function(t) { expect(t).to.eq('<div></div>'); }); }); it('test condition false, element removed, content', function() { scope.test = false; $compile( '<div><div class="test" ngie-if="test">test</div></div>' )(scope).then(function(t) { expect(t).to.eq('<div></div>'); }); }); it('test condition false, element removed, content', function() { scope.test1 = 'test'; scope.test = false; $compile( '<div><div class="test" ngie-if="test">{{test`}}</div></div>' )(scope).then(function(t) { expect(t).to.eq('<div></div>'); }); }); }); });