더북(TheBook)

예제 2-40 calculateUpgradeMileages의 단위 테스트

소스 파일 2장\Linting\Linting_01_tests.js

describe(‘calculateUpgradeMileages(tripMileages, memberMultiplier’, function() {
var testPassenger = null;
beforeEach(function() {
  testPassenger = {
    firstName : ‘일웅’,
    lastName : ‘이’,
    tripMileages : [
      500,
      600,
      3400,
      2500
    ]
  };
});
 
it(‘배율이 1.0이면 원래 마일리지를 반환한다’, function() {
  expect(calculateUpgradeMileages(testPassenger.tripMileages, 1.0))
    .toEqual(testPassenger.tripMileages);
});
 
it(‘배율이 3.0이면 해당 마일리지를 계산하여 반환한다’, function() {
  var expectedResults = [], multiplier = 3.0;
  for (var i = 0; i<testPassenger.tripMileages.length; i++) {
    expectedResults[i] = testPassenger.tripMileages[i] * multiplier;
  }
  expect(calculateUpgradeMileages(testPassenger.tripMileages, multiplier))
    .toEqual(expectedResults);
});
});

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.