1
1
from os import environ
2
-
2
+ from typing import Optional
3
3
from testcontainers .core .generic import DbContainer
4
4
5
5
@@ -24,8 +24,9 @@ class SqlServerContainer(DbContainer):
24
24
linux-mac/installing-the-microsoft-odbc-driver-for-sql-server>`_.
25
25
"""
26
26
27
- def __init__ (self , image = "mcr.microsoft.com/mssql/server:2019-latest" , user = "SA" , password = None ,
28
- port = 1433 , dbname = "tempdb" , dialect = 'mssql+pymssql' , ** kwargs ):
27
+ def __init__ (self , image : str = "mcr.microsoft.com/mssql/server:2019-latest" , user : str = "SA" ,
28
+ password : Optional [str ] = None , port : int = 1433 , dbname : str = "tempdb" ,
29
+ dialect : str = 'mssql+pymssql' , ** kwargs ) -> None :
29
30
super (SqlServerContainer , self ).__init__ (image , ** kwargs )
30
31
31
32
self .port_to_expose = port
@@ -36,13 +37,13 @@ def __init__(self, image="mcr.microsoft.com/mssql/server:2019-latest", user="SA"
36
37
self .SQLSERVER_DBNAME = dbname
37
38
self .dialect = dialect
38
39
39
- def _configure (self ):
40
+ def _configure (self ) -> None :
40
41
self .with_env ("SA_PASSWORD" , self .SQLSERVER_PASSWORD )
41
42
self .with_env ("SQLSERVER_USER" , self .SQLSERVER_USER )
42
43
self .with_env ("SQLSERVER_DBNAME" , self .SQLSERVER_DBNAME )
43
44
self .with_env ("ACCEPT_EULA" , 'Y' )
44
45
45
- def get_connection_url (self ):
46
+ def get_connection_url (self ) -> str :
46
47
return super ()._create_connection_url (
47
48
dialect = self .dialect , username = self .SQLSERVER_USER , password = self .SQLSERVER_PASSWORD ,
48
49
db_name = self .SQLSERVER_DBNAME , port = self .port_to_expose
0 commit comments