Skip to content

Commit 9602ebb

Browse files
committed
Fix scenario ID computation
1 parent 3aecfd2 commit 9602ebb

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

planterbox/feature.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,10 @@ def __init__(self, feature_path, scenarios_to_run=None, feature_text=None,
7575
def id(self):
7676
if self.scenarios_to_run:
7777
scenario_string = StringIO()
78-
csv.writer(scenario_string).writerow(self.scenarios_to_run)
79-
return self.feature_id() + ':' + scenario_string.getvalue()
78+
csv.writer(
79+
scenario_string, quoting=csv.QUOTE_NONNUMERIC
80+
).writerow(list(self.scenarios_to_run))
81+
return self.feature_id() + ':' + scenario_string.getvalue().strip()
8082
else:
8183
return self.feature_id()
8284

planterbox/tests/test_plugin.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,12 @@ def test_single_feature_index_scenario(self):
5959
{('example.package', 'test.feature'): {0}},
6060
)
6161

62+
def test_single_feature_name_scenario(self):
63+
self.assertEqual(
64+
normalize_names(['example.package:test.feature:A Test Scenario']),
65+
{('example.package', 'test.feature'): {'A Test Scenario'}},
66+
)
67+
6268
def test_single_feature_index_many_scenarios(self):
6369
self.assertEqual(
6470
normalize_names(['example.package:test.feature:3,0,5']),

0 commit comments

Comments
 (0)