PlayerClassの実装
PlayerClassを実装します。
プレイヤーに関する動作を一まとめにする
先ほど実装したvalidate_positionを使い、以下のplayer.rbを作成していきましょう。
# frozen_string_literal: true
require_relative "tic_tac_toe_validator"
# Playerの打ち手を管理をする
class Player
attr_reader :piece
def initialize(piece:)
@piece = piece
end
# 概要: コマを配置する行と列の値をコンソールから受け取り返却する
# 引数: なし
# 戻り値: 入力された行と列の情報を配列に格納して返却する => ["1", "1"]
def gets_piece_location
print "行を入力してください:"
user_input_row = gets
print "列を入力してください:"
user_input_col = gets
TicTacToeValidator.validate_input_value!(user_input_row, user_input_col)
[user_input_row.to_i, user_input_col.to_i]
end
end
入力値も検証できていい感じです。
テスト実装
元あったテストファイルからPlayerクラスのテストを抽出して新たにplayer_test.rbを作成します。
参考コードは以下のURLから参照してください。
最終更新