Files
PrimAITE/tests/integration_tests/game_layer/test_RNG_seed.py

51 lines
1.4 KiB
Python
Raw Normal View History

2025-01-02 15:05:06 +00:00
# © Crown-owned copyright 2025, Defence Science and Technology Laboratory UK
2024-08-02 12:49:17 +01:00
from pprint import pprint
2024-08-05 10:34:06 +01:00
2024-08-02 12:49:17 +01:00
import pytest
2024-08-05 10:34:06 +01:00
import yaml
from primaite.config.load import data_manipulation_config_path
from primaite.game.agent.interface import AgentHistoryItem
from primaite.session.environment import PrimaiteGymEnv
2024-08-02 12:49:17 +01:00
@pytest.fixture()
def create_env():
2024-08-05 10:34:06 +01:00
with open(data_manipulation_config_path(), "r") as f:
2024-08-02 12:49:17 +01:00
cfg = yaml.safe_load(f)
2024-08-05 10:34:06 +01:00
env = PrimaiteGymEnv(env_config=cfg)
2024-08-02 12:49:17 +01:00
return env
2024-08-05 10:34:06 +01:00
2024-08-02 12:49:17 +01:00
def test_rng_seed_set(create_env):
2024-08-05 10:34:06 +01:00
"""Test with RNG seed set."""
2024-08-02 12:49:17 +01:00
env = create_env
env.reset(seed=3)
for i in range(100):
env.step(0)
2024-08-05 10:34:06 +01:00
a = [item.timestep for item in env.game.agents["client_2_green_user"].history if item.action != "DONOTHING"]
2024-08-02 12:49:17 +01:00
env.reset(seed=3)
for i in range(100):
env.step(0)
2024-08-05 10:34:06 +01:00
b = [item.timestep for item in env.game.agents["client_2_green_user"].history if item.action != "DONOTHING"]
assert a == b
2024-08-02 12:49:17 +01:00
def test_rng_seed_unset(create_env):
2024-08-05 10:34:06 +01:00
"""Test with no RNG seed."""
2024-08-02 12:49:17 +01:00
env = create_env
env.reset()
for i in range(100):
env.step(0)
2024-08-05 10:34:06 +01:00
a = [item.timestep for item in env.game.agents["client_2_green_user"].history if item.action != "DONOTHING"]
2024-08-02 12:49:17 +01:00
env.reset()
for i in range(100):
env.step(0)
2024-08-05 10:34:06 +01:00
b = [item.timestep for item in env.game.agents["client_2_green_user"].history if item.action != "DONOTHING"]
2024-08-02 12:49:17 +01:00
2024-08-05 10:34:06 +01:00
assert a != b