Как проверить метод простой суммы в Angular 5? - PullRequest
0 голосов
/ 10 мая 2018

Я буквально любитель, когда дело доходит до тестирования в Angular 5.

Это мой простой компонент:

interface TotalAmount {
  alphaAmount: number;
  betaAmount: number;
}

export class TransactionSummaryComponent implements OnInit {

  private id = 1;
  transactionSummary: TransactionSummary;
  totalAmount: TotalAmount;

  constructor(private payService: PayService) {
  }

  ngOnInit(): void {
    this.loadTransactionSummary();
  }

  loadTransactionSummary(): void {
    this.payService.getTransactionSummary(this.id).subscribe((data) => {
      if (data !== null) {
          this.transactionSummary = data;
          this.calculateTotalAmount();
        }
      }
    );
  }

  calculateTotalAmount(): void {
    this.totalAmount = {
      alphaAmount: this.transactionSummary.alphaAmountNew + this.transactionSummary.alphaAmountOld,
      betaAmount: this.transactionSummary.betaAmountNew + this.transactionSummary.betaAmountOld
    };
  }
}

Как видите, все очень просто. Я загружаю данные с помощью службы http loadTransactionSummary(), затем запускаю метод calculateTotalAmount(), который суммирует полученные данные.

Мне интересно, как мне проверить этот calculateTotalAmount() метод. Так как есть некоторая бизнес-логика, так что следует проверить. Правильно? Должен ли я действительно сделать http-запрос для получения transactionSummary данных или, может быть, мне стоит каким-то образом издеваться над этими данными? Каков наилучший подход в таком случае? Можете привести пример?

...