47 lines
1.4 KiB
JavaScript
47 lines
1.4 KiB
JavaScript
var mockPackage = require('../mocks/mockPackage');
|
|
var Dgeni = require('dgeni');
|
|
var path = require('canonical-path');
|
|
var _ = require('lodash');
|
|
|
|
describe('contentFileReader', function() {
|
|
var dgeni, injector, fileReader;
|
|
|
|
beforeEach(function() {
|
|
dgeni = new Dgeni([mockPackage()]);
|
|
injector = dgeni.configureInjector();
|
|
fileReader = injector.get('contentFileReader');
|
|
});
|
|
|
|
var createFileInfo = function(file, content, basePath) {
|
|
return {
|
|
fileReader: fileReader.name,
|
|
filePath: file,
|
|
baseName: path.basename(file, path.extname(file)),
|
|
extension: path.extname(file).replace(/^\./, ''),
|
|
basePath: basePath,
|
|
relativePath: path.relative(basePath, file),
|
|
content: content
|
|
};
|
|
};
|
|
|
|
describe('defaultPattern', function() {
|
|
it('should match .md files', function() {
|
|
expect(fileReader.defaultPattern.test('abc.md')).toBeTruthy();
|
|
expect(fileReader.defaultPattern.test('abc.js')).toBeFalsy();
|
|
});
|
|
});
|
|
|
|
|
|
describe('getDocs', function() {
|
|
it('should return an object containing info about the file and its contents', function() {
|
|
var fileInfo = createFileInfo('project/path/modules/someModule/foo/docs/subfolder/bar.ngdoc', 'A load of content', 'project/path');
|
|
expect(fileReader.getDocs(fileInfo)).toEqual([{
|
|
docType: 'guide',
|
|
content: 'A load of content',
|
|
startingLine: 1
|
|
}]);
|
|
});
|
|
});
|
|
});
|
|
|