import unittest from server.database.benchmark_states import _build_state, is_postgresql_source class TestBenchmarkStates(unittest.TestCase): def test_detects_postgresql_dsn(self): self.assertTrue(is_postgresql_source("postgresql://user:pass@example.com/db")) self.assertTrue(is_postgresql_source("postgres://user:pass@example.com/db")) self.assertFalse(is_postgresql_source("/tmp/gameplay.sqlite3")) def test_builds_normalized_state_from_postgresql_json_values(self): row = ( 1, {}, {}, [{"x": 5, "y": 5}], [], "you-id", "You", 11, 11, "game-id", "league", "standard", "standard", "v1", 7, ) snake_rows = [ ("you-id", "You", 90, 3, 1, 2, [{"x": 1, "y": 2}], {"head": "default"}), ] state = _build_state(row, snake_rows) self.assertIsNotNone(state) board, metadata = state self.assertEqual(board["food"], [{"x": 5, "y": 5}]) self.assertEqual(board["snakes"][0]["id"], "you-id") self.assertEqual(metadata["you"]["id"], "you-id") self.assertEqual(metadata["turn"], 7) if __name__ == "__main__": unittest.main()