got session id working.

This commit is contained in:
2024-03-17 15:40:00 -04:00
parent f3722e46e4
commit 0b076aac12
5 changed files with 64 additions and 21 deletions

View File

@ -1,7 +1,8 @@
"""Tests for single server boot ups."""
from .mtt_tc import MTTClusterTC
from socket import gethostbyname, gethostname
from aiohttp import ClientSession
from .mtt_tc import MTTClusterTC, SESSION_KEY
class BootUpTC(MTTClusterTC):
@ -10,33 +11,66 @@ class BootUpTC(MTTClusterTC):
async def test_default_boot(self):
"""Does the server default boot on http://localhost:3000?"""
await self.create_server_with_flags()
def tests(response):
"""Response tests."""
self.assertEqual(response.status, 200)
await self.run_tests("/", tests)
async def test_alt_port_boot(self):
"""Can the server boot off on alternate port?"""
port = 9025
await self.create_server_with_flags("-p", str(port))
def tests(response):
"""Response tests."""
self.assertEqual(response.status, 200)
await self.run_tests("/", tests)
async def test_alt_address_boot(self):
"""Can it boot off an alternate address?"""
addr = gethostbyname(gethostname())
await self.create_server_with_flags("-a", addr)
def tests(response):
"""Response tests."""
self.assertEqual(response.status, 200)
await self.run_tests("/", tests)
async def test_for_session_id(self):
"""Is there a session if?"""
await self.create_server()
def tests(response):
"""Response tests."""
self.assertEqual(response.status, 200)
self.assertIn(SESSION_KEY, response.cookies)
await self.run_tests("/", tests)
self.assertEqual(len(self.jar), 1, "There should be a session id.")
async def test_session_id_is_random(self):
"""Is the session id random?"""
await self.create_server()
async with ClientSession() as session:
async with session.get(f"{self.servers[0].host}/") as response:
result1 = response.cookies[SESSION_KEY].value
async with ClientSession() as session:
async with session.get(f"{self.servers[0].host}/") as response:
result2 = response.cookies[SESSION_KEY].value
self.assertNotEqual(result1, result2, "Session ids should be unique.")
async def test_session_does_not_reset_after_connection(self):
"""Does the session id remain constant during the session"""
await self.create_server()
ids = []
def tests(response):
"""tests"""
if SESSION_KEY in response.cookies:
ids.append(response.cookies[SESSION_KEY].value)
for _ in range(2):
await self.run_tests("/", tests)
self.assertEqual(len(ids), 1)