{"id":29356879,"url":"https://github.com/cesnet/lbr-testsuite","last_synced_at":"2025-07-09T05:40:40.100Z","repository":{"id":225136298,"uuid":"716545692","full_name":"CESNET/lbr-testsuite","owner":"CESNET","description":null,"archived":false,"fork":false,"pushed_at":"2025-05-22T12:51:28.000Z","size":7523,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":21,"default_branch":"master","last_synced_at":"2025-06-22T19:16:39.795Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CESNET.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-11-09T11:10:23.000Z","updated_at":"2025-05-22T11:38:48.000Z","dependencies_parsed_at":"2024-02-29T13:31:32.920Z","dependency_job_id":"df46b770-9549-4e30-90f7-ee3689719e66","html_url":"https://github.com/CESNET/lbr-testsuite","commit_stats":null,"previous_names":["cesnet/lbr-testsuite"],"tags_count":59,"template":false,"template_full_name":null,"purl":"pkg:github/CESNET/lbr-testsuite","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CESNET%2Flbr-testsuite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CESNET%2Flbr-testsuite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CESNET%2Flbr-testsuite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CESNET%2Flbr-testsuite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CESNET","download_url":"https://codeload.github.com/CESNET/lbr-testsuite/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CESNET%2Flbr-testsuite/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264402725,"owners_count":23602595,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-07-09T05:40:34.948Z","updated_at":"2025-07-09T05:40:40.094Z","avatar_url":"https://github.com/CESNET.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Python package lbr_testsuite\n\nThe purpose of this package is to provide common set of tools\nthat can be used in development of tests. Package now contains\n`common`, `data_table`, `executable`, `ipconfigurer`, `packet_crafter`,\n`profiling`, `spirent`, `trex` and `vlan_config`.\n\nThe package also includes the `Topology` plugin for pytest. The plugin provides\na set of fixtures and pre-defined pytest arguments that can be used to prepare\na testing environment. The `Topology` plugin is automatically installed into\npytest with the `lbr_testsuite` package.\n\n\n## Hosting and contribution\n\nPackage `lbr_testsuite` is hosted in [PyPI index](https://pypi.org/project/lbr-testsuite/).\nYou can list all available versions by following this [link](https://pypi.org/project/lbr-testsuite/#history).\n\nThis project uses GitLab CI pipeline which is triggered\nwith every new commit. If coding style (PEP8) check passes, then\npipeline creates .whl package from contents inside [lbr_testsuite](./lbr_testsuite)\nfolder. This package can be found in `build` step of pipeline and downloaded\nfor manual installation.\n\nIf the pipeline triggers on the `master` branch, the package is also published.\nReleases (tagged commits) are uploaded to PyPI, development versions are uploaded\nto internal GitLab's Package Registry.\nVersion of the package is controlled using git tags. Development package names\nare composed from current version and the hash of the last commit.\n\nDevelopment of this repository is done mainly through GitLab. The repository is\nmirrored to GitHub for the purpose of publishing the code.\n\n\n## Installation\n\nInstall from PyPI index via command:\n```\npip install lbr-testsuite\n```\n\nThe PyPI index contains only **release** versions. The development version of\nthe package can be obtained by installing it from the GitLab's Package Registry.\nThe Package Registry have to be specified as index url. Authentication via\n[personal access token](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html)\nwith scope set to `api` must be used.\n\n\n## Usage\n\nFor `common`:\n```\nimport lbr_testsuite\n```\nAll stuff from common module are available directly under the lbr_testsuite\npackage.\n\n\nFor `data_table`:\n```\nfrom lbr_testsuite import data_table\n```\nProvides tools for storing results and generating graphs not only for\nthroughput tests.\n\n\nFor `executable`:\n```\nfrom lbr_testsuite import executable\n```\nExecutable module provides Tool, AsyncTool and Daemon convenient classes for\n**local** or **remote** execution of various commands.\n\n\nFor `ipconfigurer`:\n```\nfrom lbr_testsuite import ipconfigurer\n```\nIpconfigurer provides API for ip configuration using pyroute2 library.\n\n\nFor `packet_crafter`:\n```\nfrom lbr_testsuite import packet_crafter\n```\nClasses providing high-level packet crafting. Used for `trex` module.\n\n\nFor `profiling`:\n```\nfrom lbr_testsuite import profiling\n```\nProvides measures for profiling, such as perf tool or cache misses.\n\n\nFor `spirent`:\n```\nfrom lbr_testsuite import spirent\n```\nProvides API for Spirent Test Center (STC).\n\n\nFor `trex`:\n```\nfrom lbr_testsuite import trex\n```\nProvides our custom API for Cisco TRex traffic generator.\nOfficial API is provided by required package [lbr_trex_client](https://pypi.org/project/lbr-trex-client/).\n\n\nFor `vlan_config`:\n```\nfrom lbr_testsuite import vlan_config\n```\nHelper class for VLAN configuration management.\n\n\n## Repository Maintainers\n\n- Jan Sobol, Jan.Sobol@cesnet.cz\n- Pavel Krobot, Pavel.Krobot@cesnet.cz\n- Dominik Tran, Dominik.Tran@cesnet.cz\n\n\n## License\n\nThis project is licensed under the BSD-3-Clause License - see the\n[LICENSE](LICENSE) file for details.\n\n\n## Acknowledgement\n\nThe software was partially developed within the scope of the Security Research\nProgramme of the Czech Republic 2015-2022 (BV III / 1 VS) granted by the Ministry\nof the Interior of the Czech Republic under the project No. VI20192022137 --\nAdaptive protection against DDoS attacks (AdaptDDoS).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcesnet%2Flbr-testsuite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcesnet%2Flbr-testsuite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcesnet%2Flbr-testsuite/lists"}