mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
![]() * test_linux_sysctl: Reduce indentation level Reduce indentation level to improve readability. Signed-off-by: Benjamin Drung <benjamin.drung@ionos.com> * test_linux_sysctl: Fix test_persist_no_conf_failure `test_persist_no_conf_failure` has different behaviour depending on the operating system it is executed on. Mock all system calls and let it fail in the first try to write the sysctl configuration file. Signed-off-by: Benjamin Drung <benjamin.drung@ionos.com> * linux_sysctl: Pass parameters as list to cmd.run Signed-off-by: Benjamin Drung <benjamin.drung@ionos.com> * linux_sysctl.show: Fix parsing of sysctl.conf files The lines in sysctl.conf files can contain leading and trailing spaces. The equal sign (that separates the key and value) might have zero to multiple white spaces. Valid example: ``` kernel.core_pattern = |/usr/share/kdump-tools/dump-core %p %s %t %e # Stop low-level messages on console = less logging kernel.printk = 3 4 1 3 net.ipv4.ip_forward=1 ``` `sysctl.show` currently has two issues: * all values contain a trailing newline * Comments with leading spaces and equal sign in them are not skipped Address both issues and simplify the code and cover them with unit tests. Signed-off-by: Benjamin Drung <benjamin.drung@ionos.com> * linux_sysctl.present: Fix replacing spaces by tabs `salt/modules/linux_sysctl.py` tries to be smart in `persist()` and replaces spaces by tabs, which will be correct for keys like `net.ipv4.tcp_rmem` but not for `kernel.core_pattern`. So only sanitize the values for comparison, but not for persisting them in the configuration file. Bug: https://github.com/saltstack/salt/issues/40054 Signed-off-by: Benjamin Drung <benjamin.drung@ionos.com> * linux_sysctl: Drop unreachable code The check `if "=" not in line` already ensures that the split by `=` will return two elements. Signed-off-by: Benjamin Drung <benjamin.drung@ionos.com> * fixing failing tests * need to mock which in test_assign_success Signed-off-by: Benjamin Drung <benjamin.drung@ionos.com> Co-authored-by: Benjamin Drung <benjamin.drung@ionos.com> Co-authored-by: Gareth J. Greenaway <gareth@saltstack.com> |
||
---|---|---|
.. | ||
functional | ||
integration | ||
scenarios | ||
unit | ||
__init__.py | ||
conftest.py | ||
README.md |
New Test Suite
Welcome to the new test suite for Salt!
Any test under this directory shall be written exploring the full capabilities of PyTest. That means, no occurrences of the TestCase class shall be used, neither our customizations to it.
Purpose
While PyTest can happily run unittest tests(withough taking advantage of most of PyTest's strengths), this new path in the tests directory was created to provide a clear separation between the two approaches to writing tests. Some(hopefully all) of the existing unittest tests might get ported to PyTest's style of writing tests, new tests should be added under this directory tree, and, in the long run, this directoy shall become the top level tests directoy.