Skip to content

Commit 0ca44a3

Browse files
committed
Ignore empty --include/--exclude/--suite/--test.
Fixes #4441.
1 parent 82fb12c commit 0ca44a3

File tree

3 files changed

+22
-8
lines changed

3 files changed

+22
-8
lines changed

atest/robot/tags/include_and_exclude.robot

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ Test Template Run And Check Include And Exclude
33
Resource atest_resource.robot
44

55
*** Variables ***
6-
# Note: The test case Robot-exclude in
6+
# Note: The test case Robot-exclude in
77
# atest\testdata\tags\include_and_exclude.robot
88
# should always be automatically excluded since it
99
# uses the robot:exclude tag
@@ -16,6 +16,9 @@ ${DATA SOURCES} tags/include_and_exclude.robot
1616
No Includes Or Excludes
1717
${EMPTY} @{ALL}
1818

19+
Empty iclude and exclude are ignored
20+
--include= --exclude= @{ALL}
21+
1922
One Include
2023
--include incl1 @{INCL_ALL}
2124

atest/robot/tags/include_and_exclude_with_rebot.robot

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ ${INPUT FILES} ${INPUT FILE}
1919
No Includes Or Excludes
2020
${EMPTY} @{ALL}
2121

22+
Empty iclude and exclude are ignored
23+
--include= --exclude= @{ALL} times_are_none=False
24+
2225
One Include
2326
--include incl1 @{INCL_ALL}
2427

@@ -148,14 +151,19 @@ Create Input Files
148151
Create Output With Robot ${INPUT FILE} ${EMPTY} ${TEST FILE}
149152

150153
Run And Check Include And Exclude
151-
[Arguments] ${params} @{tests}
154+
[Arguments] ${params} @{tests} ${times_are_none}=${{bool($params)}}
152155
Run Rebot ${params} ${INPUT FILES}
153156
Stderr Should Be Empty
154157
Should Contain Tests ${SUITE} @{tests}
155158
Should Be True $SUITE.statistics.passed == len($tests)
156159
Should Be True $SUITE.statistics.failed == 0
157-
Should Be Equal ${SUITE.starttime} ${{None if $params else $ORIG_START}}
158-
Should Be Equal ${SUITE.endtime} ${{None if $params else $ORIG_END}}
160+
IF ${times_are_none}
161+
Should Be Equal ${SUITE.starttime} ${None}
162+
Should Be Equal ${SUITE.endtime} ${None}
163+
ELSE
164+
Should Be Equal ${SUITE.starttime} ${ORIG_START}
165+
Should Be Equal ${SUITE.endtime} ${ORIG_END}
166+
END
159167
Elapsed Time Should Be Valid ${SUITE.elapsedtime}
160168
Should Be True $SUITE.elapsedtime <= $ORIG_ELAPSED + 1
161169

src/robot/conf/settings.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -391,19 +391,22 @@ def split_log(self):
391391

392392
@property
393393
def suite_names(self):
394-
return self['SuiteNames'] or None
394+
return self._filter_empty(self['SuiteNames'])
395+
396+
def _filter_empty(self, items):
397+
return [i for i in items if i] or None
395398

396399
@property
397400
def test_names(self):
398-
return (self['TestNames'] + self['TaskNames']) or None
401+
return self._filter_empty(self['TestNames'] + self['TaskNames'])
399402

400403
@property
401404
def include(self):
402-
return self['Include'] or None
405+
return self._filter_empty(self['Include'])
403406

404407
@property
405408
def exclude(self):
406-
return self['Exclude'] or None
409+
return self._filter_empty(self['Exclude'])
407410

408411
@property
409412
def pythonpath(self):

0 commit comments

Comments
 (0)