import unittest
from capstone.environment import Environment


class TestEnvironment(unittest.TestCase):

    def test_states(self):
        pass

    # def test_reward_before_game_is_over(self):
    #     cur_state = TicTacToe()
    #     action = 1
    #     next_state = cur_state.copy().make_move(action)
    #     reward = self.mdp.reward(cur_state, action, next_state)
    #     self.assertEqual(reward, 0)

    # def test_reward_when_game_is_over(self):
    #     cur_state = TicTacToe()
    #     action = 1
    #     next_state = cur_state.copy().make_move(action)
    #     reward = self.mdp.reward(cur_state, action, next_state)
    #     self.assertEqual(reward, 0)

    # def test_reward_when_game_is_over_and_first_player_wins(self):
    #     cur_state = TicTacToe().make_moves([1, 4, 2, 5])
    #     action = 3
    #     next_state = cur_state.copy().make_move(action)
    #     reward = self.mdp.reward(cur_state, action, next_state)
    #     self.assertEqual(reward, 1)

import unittest
from capstone.environment import Environment
from capstone.game import TicTacToe
from capstone.mdp import GameMDP


class TestEnvironment(unittest.TestCase):

    def test_cur_state(self):
        game = TicTacToe()
        mdp = GameMDP(game, None, 0)
        env = Environment(mdp)
        self.assertEqual(env.cur_state(), mdp.start_state())

Add test_cur_state to TestEnvironment