Test process port
This commit is contained in:
parent
5c04b5f85c
commit
4b5880cb36
3 changed files with 10 additions and 4 deletions
|
@ -2,7 +2,7 @@ import os
|
||||||
import re
|
import re
|
||||||
from dataclasses import dataclass, field
|
from dataclasses import dataclass, field
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from typing import Dict, List
|
from typing import Dict, List, Optional
|
||||||
|
|
||||||
from click.termui import _ansi_colors as ansi_colors # type: ignore
|
from click.termui import _ansi_colors as ansi_colors # type: ignore
|
||||||
from dotenv import dotenv_values
|
from dotenv import dotenv_values
|
||||||
|
@ -109,10 +109,13 @@ class Process:
|
||||||
return proc.pid
|
return proc.pid
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def port(self):
|
def port(self) -> Optional[int]:
|
||||||
proc = self.get_running_process()
|
proc = self.get_running_process()
|
||||||
if proc:
|
if proc:
|
||||||
return proc.environ().get("PORT")
|
process_port = proc.environ().get("PORT")
|
||||||
|
if process_port is not None:
|
||||||
|
return int(process_port)
|
||||||
|
return None
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def colour(self):
|
def colour(self):
|
||||||
|
|
|
@ -91,3 +91,6 @@ class RunningProcessTestCase(BaseWorkerTestCase):
|
||||||
|
|
||||||
def test_pid(self):
|
def test_pid(self):
|
||||||
self.assertEqual(self.process.pid, self.response["pid"])
|
self.assertEqual(self.process.pid, self.response["pid"])
|
||||||
|
|
||||||
|
def test_port(self):
|
||||||
|
self.assertIsNotNone(self.process.port)
|
||||||
|
|
|
@ -152,7 +152,7 @@ class ProcessPortTestCase(BaseWorkerTestCase):
|
||||||
)
|
)
|
||||||
process = psutil.Process(response["pid"])
|
process = psutil.Process(response["pid"])
|
||||||
self.assertIn("PORT", process.environ())
|
self.assertIn("PORT", process.environ())
|
||||||
self.assertEqual(self.process.port, process.environ()["PORT"])
|
self.assertEqual(self.process.port, int(process.environ()["PORT"]))
|
||||||
|
|
||||||
def test_doesnt_assign_port(self):
|
def test_doesnt_assign_port(self):
|
||||||
response = send_to_server(
|
response = send_to_server(
|
||||||
|
|
Reference in a new issue