Как выполнить модульное тестирование возвращаемого значения функции - Angular (Жасмин / Карма) - PullRequest
1 голос
/ 19 марта 2019

Мне интересно, есть ли способ правильно проверить возвращаемое значение функции в Angular. Я хочу существенно проверить возвращаемое значение, чтобы быть истинным для одного теста, и написать другой, чтобы проверить противоположный сценарий.

Ts компонент:

    get() {
        if (this.object == undefined) {
            return true;
        } else {
            return false;
        }    
    }

Единственный способ проверить правильность возвращаемого значения, который я сейчас считаю нужным, - это установить переменную для хранения возвращаемого значения. Ниже моя попытка, я просто застрял в утверждении того, что следует ожидать.

Тест:

it('should call get function and return true', () => {
        //Arrange
        component.object = undefined;

        //Act
        component.get();

        //Assert
        expect(component.get). <-- *stuck here*

    });

1 Ответ

5 голосов
/ 19 марта 2019

Получите значение в act , а затем отметьте его как true в assert .

it('should call get function and return true', () => {
        // Arrange
        component.object = undefined;

        // Act
        var result = component.get();

        // Assert
        expect(result).toBe(true);
    });

Обратите внимание, что тело метода get может быть упрощено до

return this.object === undefined;
...