fix addmarker - extract mark from markdecorator

This commit is contained in:
Ronny Pfannschmidt
2018-06-12 14:49:54 +02:00
parent 4d0297b413
commit eb0c6a8287
2 changed files with 16 additions and 2 deletions

View File

@@ -173,10 +173,12 @@ class Node(object):
chain.reverse()
return chain
def add_marker(self, marker):
def add_marker(self, marker, append=True):
"""dynamically add a marker object to the node.
:type marker: str or pytest.mark.*
``append=True`` whether to append the marker,
if false insert at position 0
"""
from _pytest.mark import MarkDecorator, MARK_GEN
@@ -185,7 +187,10 @@ class Node(object):
elif not isinstance(marker, MarkDecorator):
raise ValueError("is not a string or pytest.mark.* Marker")
self.keywords[marker.name] = marker
self.own_markers.append(marker.mark)
if append:
self.own_markers.append(marker.mark)
else:
self.own_markers.insert(0, marker.mark)
def iter_markers(self, name=None):
"""