pytest-yls
Pytest plugin adding primitives for E2E/integration tests.
Public fixtures:
yls_prepareyls_prepare_with_settings
To interact with the tested YLS use Context obtained by calling the fixture.
For more information about the Context class checkout
plugin.py.
Example test
# Add yls_prepare fixture
def test_completion_basic(yls_prepare):
# Prepare the tested file
# <$> marks the cursor position
contents = """rule test {
condition:
<$>
}"""
# Initialize the testing context by calling the fixture
context = yls_prepare(contents)
# You can now simulate requests on the context
# In this case we trigger the code completion
response = context.send_request(
methods.COMPLETION,
types.CompletionParams(
textDocument=types.TextDocumentIdentifier(uri=context.opened_file.as_uri()),
position=context.get_cursor_position(),
),
)
# Assert the response how you want
assert response
for module in ["cuckoo", "elf", "pe", "time"]:
assert any(
module in item["label"] for item in response["items"]
), f"{module=} is not in response"
For more inspiration check out yls/tests.
License
Copyright (c) 2022 Avast Software, licensed under the MIT license. See the
LICENSE file
for more details.
Release files for pytest-yls 1.4.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pytest_yls-1.4.4.tar.gz | 5.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pytest_yls-1.4.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.2 kB
Release files / pytest_yls-1.4.4.tar.gz
| Download URL | pytest_yls-1.4.4.tar.gz |
|---|---|
| Size | 5.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6ede83ddbb38b4d70755d5b04f1c2a572911ab559e4692e10e3d48e2de0e2427
|
|
BLAKE2b-256 checksum How to use checksums |
baa9abf1f81b43114c59cdf5ef1109f51ad44a2d60fc7a18a2606e61575fc749
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.0.1 CPython/3.13.2 Darwin/23.6.0
|
Release files / pytest_yls-1.4.4-py3-none-any.whl
| Download URL | pytest_yls-1.4.4-py3-none-any.whl |
|---|---|
| Size | 7.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0300ceccfc97b2c7aa4a035b710c2abe805d082d0967320afa19ad5592c1ddf8
|
|
BLAKE2b-256 checksum How to use checksums |
1e1bdab79ec19f0eb9b7782cd6d0f5572c894addd72d8ebf7132d0b84eec18ad
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.0.1 CPython/3.13.2 Darwin/23.6.0
|