Script assertions
provide.testkit.process.script_assertions
¶
Assertion utilities for bash script testing.
Provides specialized assertion functions for validating bash script execution results, file creation, git operations, and other common script side effects.
Classes¶
Functions¶
assert_directory_exists
¶
Assert that a directory exists.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
dir_path
|
Path
|
Path to the directory. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If directory does not exist. |
Source code in provide/testkit/process/script_assertions.py
assert_file_contains
¶
Assert that a file contains specific content.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
file_path
|
Path
|
Path to the file. |
required |
content
|
str
|
Content to search for. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If file does not contain the content. |
Source code in provide/testkit/process/script_assertions.py
assert_file_created
¶
Assert that a file was created.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
file_path
|
Path
|
Path to the file. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If file does not exist. |
Source code in provide/testkit/process/script_assertions.py
assert_file_executable
¶
Assert that a file has executable permissions.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
file_path
|
Path
|
Path to the file. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If file is not executable. |
Source code in provide/testkit/process/script_assertions.py
assert_file_not_contains
¶
Assert that a file does not contain specific content.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
file_path
|
Path
|
Path to the file. |
required |
content
|
str
|
Content that should not be present. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If file contains the content. |
Source code in provide/testkit/process/script_assertions.py
assert_git_repo_cloned
¶
Assert that a git repository was cloned.
Checks that the directory exists and contains a .git directory.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
repo_path
|
Path
|
Path to the repository. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If repository was not cloned. |
Source code in provide/testkit/process/script_assertions.py
assert_script_exit_code
¶
assert_script_exit_code(
result: ScriptResult,
expected_code: int,
message: str | None = None,
) -> None
Assert that a script exited with a specific code.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
ScriptResult
|
Script execution result. |
required |
expected_code
|
int
|
Expected exit code. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If exit code does not match. |
Source code in provide/testkit/process/script_assertions.py
assert_script_failure
¶
Assert that a script failed (non-zero exit code).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
ScriptResult
|
Script execution result. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If script succeeded. |
Source code in provide/testkit/process/script_assertions.py
assert_script_success
¶
Assert that a script executed successfully (exit code 0).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
ScriptResult
|
Script execution result. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If script did not succeed. |
Source code in provide/testkit/process/script_assertions.py
assert_stderr_contains
¶
Assert that script stderr contains specific content.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
ScriptResult
|
Script execution result. |
required |
content
|
str
|
Content to search for in stderr. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If stderr does not contain the content. |
Source code in provide/testkit/process/script_assertions.py
assert_stderr_empty
¶
Assert that script stderr is empty.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
ScriptResult
|
Script execution result. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If stderr is not empty. |
Source code in provide/testkit/process/script_assertions.py
assert_stdout_contains
¶
Assert that script stdout contains specific content.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
ScriptResult
|
Script execution result. |
required |
content
|
str
|
Content to search for in stdout. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If stdout does not contain the content. |
Source code in provide/testkit/process/script_assertions.py
assert_stdout_empty
¶
Assert that script stdout is empty.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
result
|
ScriptResult
|
Script execution result. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If stdout is not empty. |
Source code in provide/testkit/process/script_assertions.py
assert_symlink_points_to
¶
assert_symlink_points_to(
symlink_path: Path,
target_path: Path,
message: str | None = None,
) -> None
Assert that a symlink points to a specific target.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
symlink_path
|
Path
|
Path to the symlink. |
required |
target_path
|
Path
|
Expected target path. |
required |
message
|
str | None
|
Optional custom assertion message. |
None
|
Raises:
| Type | Description |
|---|---|
AssertionError
|
If symlink does not point to target. |