Commit 57da8f72 authored by Adrian Prantl's avatar Adrian Prantl
Browse files

Add support for XFAILing a test based on a setting.

This is analogous to the skipping mechanism introduced in
https://reviews.llvm.org/D75864
parent 40f4a9fd
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -258,7 +258,8 @@ def expectedFailureAll(bugnumber=None,
                       debug_info=None,
                       swig_version=None, py_version=None,
                       macos_version=None,
                       remote=None, dwarf_version=None):
                       remote=None, dwarf_version=None,
                       setting=None):
    return _decorateTest(DecorateMode.Xfail,
                         bugnumber=bugnumber,
                         oslist=oslist, hostoslist=hostoslist,
@@ -267,7 +268,8 @@ def expectedFailureAll(bugnumber=None,
                         debug_info=debug_info,
                         swig_version=swig_version, py_version=py_version,
                         macos_version=None,
                         remote=remote,dwarf_version=dwarf_version)
                         remote=remote,dwarf_version=dwarf_version,
                         setting=setting)


# provide a function to skip on defined oslist, compiler version, and archs
+8 −0
Original line number Diff line number Diff line
@@ -27,3 +27,11 @@ class SettingSkipSanityTestCase(TestBase):
  def testNotExisting(self):
    self.assertTrue(True, "This test should run!")

  @expectedFailureAll(setting=('target.prefer-dynamic-value', 'no-dynamic-values'))
  def testXFAIL(self):
    self.assertTrue(False, "This test should run and fail!")

  @expectedFailureAll(setting=('target.prefer-dynamic-value', 'run-target'))
  def testNotXFAIL(self):
    self.assertTrue(True, "This test should run and succeed!")