Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.04.2014, 18:07
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

Как протестировать фильтр, объявленный в шаблоне?
Нужно дописать сюда тест https://github.com/angular-translate...ec.js#L85-L129

Проверяется эта правка https://github.com/tamtakoe/angular-...25ac1174683e6b

Суть в том, что в выражении
{{STR | translate: '{val:demo.count}'}}

demo.count не вычислялась (возвращалась пустота)

После исправления стал передавать this (= scope) в фильтр и интерполяция заработала (стало возвращаться значение demo.count).


Как протестировать такую штуку?
Ответить с цитированием
  #2 (permalink)  
Старый 21.04.2014, 07:48
Аватар для FireVolkhov
Аспирант
Отправить личное сообщение для FireVolkhov Посмотреть профиль Найти все сообщения от FireVolkhov
 
Регистрация: 17.04.2013
Сообщений: 88

Возможно тебе поможет вот такой примерчик
describe('Test', function(){

	var $ = angular.element,
		$compile,
		$rootScope;

	beforeEach(module('pascalprecht.translate', function ($translateProvider) {
		$translateProvider
			.translations('en', {
				'TRANSLATION_ID_3': 'Lorem Ipsum {{value + value}}'
			})
			.preferredLanguage('en');
	}));
	
	beforeEach(inject(function(_$compile_, _$rootScope_){
		$compile = _$compile_;
		$rootScope = _$rootScope_;
	} ) );

	describe('custom', function(){

		var elem, $scope;

		beforeEach(function(){
			elem = $("<div>{{STR | translate: '{val:demo.count}' }}</div>");
			$scope = $rootScope.new();
			$compile(elem)($scope);
			$scope.$digest();
		});

		afterEach(function(){
		    $scope.destroy();
		});

		it('to do ...', function(){
			$scope.STR = 'TRANSLATION_ID_3';
			$scope.demo = {
				count: '3'
			};
			$scope.$digest();
			expect(elem[0].innerText).toBe('Lorem Ipsum 33');
		});
	});
});
Ответить с цитированием
  #3 (permalink)  
Старый 22.04.2014, 10:52
Профессор
Отправить личное сообщение для Shitbox2 Посмотреть профиль Найти все сообщения от Shitbox2
 
Регистрация: 04.10.2010
Сообщений: 571

Примерно так и сделал https://github.com/tamtakoe/angular-...c1a6ed8bbe7de9

Спасибо!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Открытие div блока при первом визите на сайт Nushaba Общие вопросы Javascript 28 20.12.2013 21:24
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Как организовать RichEdit arma Элементы интерфейса 2 18.02.2010 14:57
О наследовании событий, или как корректно его отменить. JCShen Events/DOM/Window 8 09.02.2010 00:00
Как правильно послать XML в POST запросе LowCoder AJAX и COMET 10 15.07.2009 23:20