27 lines
720 B
Python
27 lines
720 B
Python
|
|
"""Starts and runs releasse version of MoreThanText server."""
|
||
|
|
|
||
|
|
from asyncio import create_subprocess_exec
|
||
|
|
from pathlib import Path
|
||
|
|
from release_tests.support import ADDR, get_port
|
||
|
|
|
||
|
|
EXECUTABLE = Path.cwd().joinpath("target", "release", "morethantext")
|
||
|
|
|
||
|
|
|
||
|
|
class MTTServer:
|
||
|
|
"""Runs a MoreThanText server."""
|
||
|
|
|
||
|
|
def __init__(self):
|
||
|
|
"""Initialization"""
|
||
|
|
self.port = get_port()
|
||
|
|
self.cmd = [EXECUTABLE, "-a", ADDR, "-p", str(self.port)]
|
||
|
|
self.server = None
|
||
|
|
|
||
|
|
@property
|
||
|
|
def baseurl(self):
|
||
|
|
"""URL to server"""
|
||
|
|
return f"http://{ADDR}:{self.port}"
|
||
|
|
|
||
|
|
async def start(self):
|
||
|
|
"""Starts the server."""
|
||
|
|
self.server = await create_subprocess_exec(*self.cmd)
|