mirror of
https://github.com/Hopiu/angular.js.git
synced 2026-03-16 23:30:23 +00:00
64 lines
1.6 KiB
JavaScript
64 lines
1.6 KiB
JavaScript
var writer,
|
|
rewire = require('rewire');
|
|
|
|
function mockResolvedPromise(resolvedValue) {
|
|
return {
|
|
then: function(success, failure) {
|
|
success(resolvedValue);
|
|
}
|
|
};
|
|
}
|
|
|
|
describe('writer', function() {
|
|
|
|
beforeEach(function() {
|
|
writer = rewire('../src/writer.js');
|
|
});
|
|
|
|
describe('toString', function() {
|
|
var toString;
|
|
|
|
beforeEach(function() {
|
|
toString = writer.toString;
|
|
});
|
|
|
|
it('should merge string', function() {
|
|
expect(toString('abc')).toEqual('abc');
|
|
});
|
|
|
|
it('should merge obj', function() {
|
|
expect(toString({a:1})).toEqual('{"a":1}');
|
|
});
|
|
|
|
it('should merge array', function() {
|
|
expect(toString(['abc',{}])).toEqual('abc{}');
|
|
});
|
|
});
|
|
|
|
describe('replace method', function() {
|
|
var content,
|
|
replacements;
|
|
|
|
beforeEach(function() {
|
|
content = 'angular super jQuery manifest';
|
|
});
|
|
|
|
it('should replace placeholders', function() {
|
|
replacements = {'angular': 'ng', 'jQuery': 'jqlite','notHere': 'here'};
|
|
|
|
content = writer.replace(content, replacements);
|
|
expect(content).toBe('ng super jqlite manifest');
|
|
});
|
|
});
|
|
|
|
describe('copy', function() {
|
|
it('should call the transformation function', function() {
|
|
var readMock = jasmine.createSpy('readMock').andReturn(mockResolvedPromise('DUMMY CONTENT'));
|
|
writer.__set__("qfs.read", readMock);
|
|
var transformationFn = jasmine.createSpy('transformationFn');
|
|
writer.copy('from', 'to', transformationFn, 'arg1', 'arg2');
|
|
expect(readMock).toHaveBeenCalled();
|
|
expect(transformationFn).toHaveBeenCalledWith('DUMMY CONTENT', 'arg1', 'arg2');
|
|
});
|
|
});
|
|
});
|