Я хотел провести модульное тестирование файла сервиса.
В сервисе у меня есть две функции: getInlineView
& breakByRanges
.
INPUT
const data = {
"text": "Do you have questions or comments and do you wish to contact ABC? Please visit our customer support page.",
"inlineStyleRanges": [],
"inlineEntityRanges": [{
"type": "LINK",
"offset": 83,
"length": 16,
"data": {
"target": "_self",
"url": "/index.htm"
}
}]
}
SO Если я передам выше INPUT
на breakData, I get the below
OUTPUT`
OUTPUT
[{"data":"Do you have questions or comments and do you wish to contact ABC? Please visit our ","type":"text"},{"data":"customer support ","type":"LINK"},{"data":"page.","type":"text"}]
Ниже приведены мои спецификации,
describe('GenerateInlineTagsService', () => {
let service: GenerateInlineTagsService;
beforeEach(() => TestBed.configureTestingModule({}));
it('should call getInlineView method ', () => {
const spy = spyOn<any>(service, 'getInlineView').and.returnValue(ENTITY_RANGERS);
service.getInlineView(data);
const obj2 = JSON.stringify(ENTITY_RANGERS); // refers to output mock
expect(JSON.stringify(spy)).toEqual(obj2);
});
});
Итак, в чем проблема?
Я передаю data
в качестве ввода в getInlineView
и ожидаем, что возвращаемое значение равно фиктивному значению ENTITY_RANGERS
(OUTPUT).
Но я получаю ошибку ниже
Ожидается, что undefined равно "[{" data ":" У вас есть вопросы или комментарии, и выХотите связаться с ABC? Пожалуйста, посетите наш "," type ":" text "}, {" data ":" support support "," type ":" LINK "}, {" data ":" page. "," type":" text "}] '.
Пожалуйста, помогите.
Ниже приведена ссылка на фактическую функцию,
https://stackblitz.com/edit/typescript-qxndgd