/tdd-kata-by-typescript

「Katas to learn TDD」をTypeScriptで実装する

Primary LanguageTypeScript

Katas to Learn TDD

Katas のページに記載されている題材を例にして、TDD の練習を行う

Bowling Game Kata

ルール

  • 基本ルール
    • ゲームは 10 回のラウンドで構成されている
    • 各プレイヤーは 1 回のラウンドで 2 つのボールを使ってピンを倒すことができる
    • ピンは 10 本で構成される
    • 1 回のラウンドの点数は、倒されたピンの合計数に、ストライクとスペアのボーナスを加えたものとなる
  • ストライク
    • ストライクは、最初のボールで 10 本のピンを全て倒すことを意味する
    • ボーナスは、次の 2 回のボールで倒したピンの本数となる
  • スペア
    • スペアは、2 つのボールで 10 本のピンを全て倒すことを意味する
    • ボーナスは、次の 1 回のボールで倒したピンの本数となる
  • 10 回目のラウンドでストライク、またはスペアを実現したプレイヤーは、その 1 回のボールを投げることができる
  • ただし、10 回目で投げることのできるボールの数は 3 級までである

要件

  • Game クラスを作成する
    • void roll(int) はプレイヤーがボールを投げるたびに実行される。引数は倒したピンの数となる
    • int score() はそのゲームでの点数の合計を出力する