feat(models): Added Context class

Context stores execution state:
- variables: static test variables
- extracted: data extracted from responses
- resolve(): replaces {{var}} placeholders with values
This commit is contained in:
Black_Raven committed 2026-08-24 15:47:32 +03:00
1 parent 614cfa8549
commit adb9ed31c1
1 file changed
+19
+19
View File
@@ -0,0 +1,19 @@
from typing import Any
from .itm import TestModel
class Context:
def __init__(self, config: TestModel):
self.config = config
self.variables: dict[str, str] = config.variables.copy()
self.extracted: dict[str, Any] = {}
def resolve(self, template: str) -> str:
result = template
all_vars = {**self.variables, **self.extracted}
for key, value in all_vars.items():
result = result.replace(f"{{{{{key}}}}}", str(value))
return result
def set_extracted(self, name: str, value: Any):
self.extracted[name] = value