Pytest plugin to test the YLS as a whole.
Project description
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.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pytest_yls-1.4.0.tar.gz.
File metadata
- Download URL: pytest_yls-1.4.0.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.10.12 Linux/5.15.0-71-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c07ae50205db2a051cf8e2fe6a043143f4dbc0473b07e72c0b5716a4aa17e20
|
|
| MD5 |
b5b1d78317a0091c4d6ed8843f169b88
|
|
| BLAKE2b-256 |
23045e1bda7c62829ccace4aa832aa5457246c89faa277c6eb5629d43b333687
|
File details
Details for the file pytest_yls-1.4.0-py3-none-any.whl.
File metadata
- Download URL: pytest_yls-1.4.0-py3-none-any.whl
- Upload date:
- Size: 8.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.10.12 Linux/5.15.0-71-generic
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a94fe93e11373611a270fa9679b8548e85b4254c079cc604a2147d659fb2979
|
|
| MD5 |
5b272c9a4d3c754fc836eda312e34c7b
|
|
| BLAKE2b-256 |
db44d29eb5783a25da81e392e77b8a054dfb8763139fafad0ad622fdc62ea9c5
|