configurando o pré-processador karma ng-htmljs-preprocessor
Estou configurando meu arquivo de configuração do Karma, mas não compreendo completamente algumas das opções existentes, pois não estou tendo modelos de teste de sucesso que foram executados no ngHtml2JsPreprocessor e foram
$templateCached
Dentro do ngHtml2JsPreprocessor, posso adicionar algumas propriedades de valor-chave que envolvem caminhos.
ngHtml2JsPreprocessor: {
stripPrefix: ".*/Went all the way back to the root of my application/",
// moduleName: 'templatesCached'//
},
Comentei os modelos no momento para garantir que estou tendo acesso a cada arquivo como módulo. Estou carregando os módulos sem erros. Eu posso encontrar a versão templateCached em minhas ferramentas de desenvolvimento.
beforeEach(module('template'));
A pasta Meus modelos fica fora do caminho base que criei.
basePath: 'Scripts/',
Eu tenho referenciado dentro dopré-processadoresobjeto
preprocessors: {
'../Templates/**/*.html' : ['ng-html2js']
},
Novamente, todos os meus modelos agora são arquivos js e armazenados em cache.
Eu dentro do meupackage.jsonSalvei os arquivos como
save-dev
"karma-chrome-launcher": "^0.2.2",
"karma-jasmine": "^0.2.2",
"karma-ng-html2js-preprocessor": "^0.2.1",
Mencionei minhas instalações nos plugins.
plugins: [
'karma-chrome-launcher',
'karma-jasmine',
'karma-sinon',
'karma-ng-html2js-preprocessor'
],
Tenho todos os meus arquivos carregados
files: [
//jquery libaries
// angular libraries
// Scripts files
// source app.js
// tests folder and files
]
Meus testes estão acabando com o início do Karma
No entanto, minha diretiva é apenas uma string vazia
element.html()
retorna ""
Tenho bardo injetar configurado
bard.inject(
"$compile",
"$controller",
"$rootScope",
'$templateCache',
"haConfig",
"$q"
);
Aqui está o interior do meu antes
bard.mockService(haConfig, {
getTemplateUrl: '/tst!'
});
//bard.mockService(haConfig, {});
console.log('ha config2', haConfig.getTemplateUrl());
var html = angular.element("<div explore-hero></div>");
console.log('htl',haConfig.getTemplateUrl());
scope = $rootScope.$new();
//templateCache
element = $compile(html)(scope);
//console.log(haConfig.getTemplateUrl(html));
scope.$digest(element);
console.log('missing text',haConfig.getTemplateUrl(html));
controller = element.scope();
console.log("element", element);
Não faço ideia por que estou recebendo uma string vazia de volta. Estou criando o arquivo html, mas não há nada nele.
Tudo o que me pergunto se devo ter oos arquivos em cache aparecendo em uma pasta nas minhas ferramentas de desenvolvimento? Também se os arquivos devem ou não ser referenciados dentro da matriz de arquivos dentrokarma.conf.js
No momento, tenho os arquivos html referenciados? Eu tentei os arquivos js, mas isso não pareceu fazer nada