feat: add tests
This commit is contained in:
parent
4346d57dde
commit
2bc6664c83
1677 changed files with 10600 additions and 0 deletions
|
|
@ -16,6 +16,7 @@ You should have received a copy of the GNU Lesser General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
from argparse import ArgumentError
|
||||||
from tiramisu_cmdline_parser import TiramisuCmdlineParser
|
from tiramisu_cmdline_parser import TiramisuCmdlineParser
|
||||||
from rougail.error import ExtentionError
|
from rougail.error import ExtentionError
|
||||||
|
|
||||||
|
|
@ -32,6 +33,7 @@ class RougailUserDataCommandline:
|
||||||
*,
|
*,
|
||||||
rougailconfig: "RougailConfig" = None,
|
rougailconfig: "RougailConfig" = None,
|
||||||
arguments = None,
|
arguments = None,
|
||||||
|
prog = None,
|
||||||
**kwargs,
|
**kwargs,
|
||||||
):
|
):
|
||||||
# this is the tiramisu config object
|
# this is the tiramisu config object
|
||||||
|
|
@ -53,6 +55,7 @@ class RougailUserDataCommandline:
|
||||||
self.warnings = []
|
self.warnings = []
|
||||||
self.parser = TiramisuCmdlineParser(
|
self.parser = TiramisuCmdlineParser(
|
||||||
self.config,
|
self.config,
|
||||||
|
prog=prog,
|
||||||
exit_on_error=False,
|
exit_on_error=False,
|
||||||
**kwargs
|
**kwargs
|
||||||
)
|
)
|
||||||
|
|
|
||||||
33
src/rougail/user_data_commandline/config.py
Normal file
33
src/rougail/user_data_commandline/config.py
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
"""
|
||||||
|
Silique (https://www.silique.fr)
|
||||||
|
Copyright (C) 2025
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify it
|
||||||
|
under the terms of the GNU Lesser General Public License as published by the
|
||||||
|
Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
||||||
|
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
|
||||||
|
details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
def get_rougail_config(
|
||||||
|
*,
|
||||||
|
backward_compatibility: bool = True, # pylint: disable=unused-argument
|
||||||
|
) -> dict:
|
||||||
|
"""get rougail config for commandline"""
|
||||||
|
|
||||||
|
return {
|
||||||
|
"name": "commandline",
|
||||||
|
"process": "user data",
|
||||||
|
"level": 55,
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
__all__ = ("get_rougail_config",)
|
||||||
BIN
tests/__pycache__/test_load.cpython-313-pytest-8.3.4.pyc
Normal file
BIN
tests/__pycache__/test_load.cpython-313-pytest-8.3.4.pyc
Normal file
Binary file not shown.
4
tests/results/test_namespace/00_0empty/errors/all.json
Normal file
4
tests/results/test_namespace/00_0empty/errors/all.json
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
1
tests/results/test_namespace/00_0empty/makedict/all.json
Normal file
1
tests/results/test_namespace/00_0empty/makedict/all.json
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
{}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
{}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
[
|
||||||
|
"--rougail.version",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
[
|
||||||
|
"--rougail.version",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
"rougail.version": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
"rougail.version": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
[
|
||||||
|
"--rougail.empty",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
[
|
||||||
|
"--rougail.empty",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
"rougail.empty": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
"rougail.empty": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"string1",
|
||||||
|
"--rougail.var2",
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": "string1",
|
||||||
|
"rougail.var2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": "no",
|
||||||
|
"rougail.var2": [
|
||||||
|
"no"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,10 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3",
|
||||||
|
"--rougail.var2",
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
],
|
||||||
|
"rougail.var2": [
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": [
|
||||||
|
"no",
|
||||||
|
"yes",
|
||||||
|
"maybe"
|
||||||
|
],
|
||||||
|
"rougail.var2": [
|
||||||
|
"no",
|
||||||
|
"yes",
|
||||||
|
"maybe"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"errors": [
|
||||||
|
"unrecognized arguments: --rougail.leadership.var1 string1 string2 string3 --rougail.leadership.var2 (0, 'string1') --rougail.leadership.var2 0 string1"
|
||||||
|
],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
[
|
||||||
|
"--rougail.leadership.var1",
|
||||||
|
"string1",
|
||||||
|
"string2",
|
||||||
|
"string3",
|
||||||
|
"--rougail.leadership.var2",
|
||||||
|
"(0, 'string1')",
|
||||||
|
"",
|
||||||
|
"",
|
||||||
|
"--rougail.leadership.var2",
|
||||||
|
"0",
|
||||||
|
"string1",
|
||||||
|
"--rougail.var2",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
"rougail.leadership.var1": [
|
||||||
|
{
|
||||||
|
"rougail.leadership.var1": "a_value",
|
||||||
|
"rougail.leadership.var2": "a_value"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"rougail.var2": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
"rougail.leadership.var1": [
|
||||||
|
{
|
||||||
|
"rougail.leadership.var1": "a_value",
|
||||||
|
"rougail.leadership.var2": "a_value"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"rougail.var2": "a_value"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan",
|
||||||
|
"--rougail.var2",
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": [
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
],
|
||||||
|
"rougail.var2": [
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": [
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
],
|
||||||
|
"rougail.var2": [
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"string1",
|
||||||
|
"--rougail.var2",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": "string1",
|
||||||
|
"rougail.var2": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": "string1",
|
||||||
|
"rougail.var2": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"string1",
|
||||||
|
"--rougail.var2",
|
||||||
|
"string1",
|
||||||
|
"--rougail.var3",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"string1",
|
||||||
|
"--rougail.var3",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": "string1",
|
||||||
|
"rougail.var2": "string1",
|
||||||
|
"rougail.var3": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": "string1",
|
||||||
|
"rougail.var2": "string1",
|
||||||
|
"rougail.var3": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan",
|
||||||
|
"--rougail.var2",
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": [
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
],
|
||||||
|
"rougail.var2": [
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": [
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
],
|
||||||
|
"rougail.var2": [
|
||||||
|
"domain1.lan",
|
||||||
|
"domain2.lan"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"string1",
|
||||||
|
"--rougail.var2",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"string1",
|
||||||
|
"--rougail.var2",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": "string1",
|
||||||
|
"rougail.var2": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": "string1",
|
||||||
|
"rougail.var2": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
[
|
||||||
|
"--rougail.without_type",
|
||||||
|
"string1"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
"rougail.without_type": "string1"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
"rougail.without_type": "non"
|
||||||
|
}
|
||||||
4
tests/results/test_namespace/00_6boolean/errors/all.json
Normal file
4
tests/results/test_namespace/00_6boolean/errors/all.json
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
[
|
||||||
|
"--rougail.var1",
|
||||||
|
"--rougail.var2",
|
||||||
|
"--rougail.var3",
|
||||||
|
"--rougail.var4",
|
||||||
|
"--rougail.var5",
|
||||||
|
"--rougail.var6"
|
||||||
|
]
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
[]
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": true,
|
||||||
|
"rougail.var2": true,
|
||||||
|
"rougail.var3": true,
|
||||||
|
"rougail.var4": true,
|
||||||
|
"rougail.var5": true,
|
||||||
|
"rougail.var6": true
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"rougail.var1": true,
|
||||||
|
"rougail.var2": true,
|
||||||
|
"rougail.var3": true,
|
||||||
|
"rougail.var4": false,
|
||||||
|
"rougail.var5": false,
|
||||||
|
"rougail.var6": false
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"errors": [],
|
||||||
|
"warnings": []
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue