[Lldb-commits] [lldb] r330708 - [dotest] Make the set of tests independent of the test configuration

Pavel Labath via lldb-commits lldb-commits at lists.llvm.org
Wed Apr 25 12:04:30 PDT 2018


On Wed, 25 Apr 2018 at 19:07, Vedant Kumar <vsk at apple.com> wrote:

> Hi Pavel,

> > On Apr 24, 2018, at 3:51 AM, Pavel Labath via lldb-commits <
lldb-commits at lists.llvm.org> wrote:
> > +def checkDebugInfoSupport():
> > +    import lldb
> > +
> > +    platform = lldb.DBG.GetSelectedPlatform().GetTriple().split('-')[2]
> > +    compiler = configuration.compiler
> > +    skipped = []
> > +    for cat in test_categories.debug_info_categories:
> > +        if cat in configuration.categoriesList:
> > +            continue # Category explicitly requested, let it run.

> Is there a missing check here for:

> if cat in configuration.skipCategories:
>    skip(cat)
I don't see why that would be needed. If you pass --skip-categories dsym,
the dsym category will already be present in "configuration.skipCategories"
so there's nothing to do here.

What this code does is it extends the skipped categories list based on the
supported configurations. So, if you're on darwin it should behave as if
you typed --skip-cateogory "dwo" on the command line. The actual code which
does category-based skipping lives elsewhere, I don't remember the exact
file off the top of my head.

> > @@ -1732,14 +1732,11 @@ class LLDBTestCaseFactory(type):
> >         for attrname, attrvalue in attrs.items():
> >             if attrname.startswith("test") and not getattr(
> >                     attrvalue, "__no_debug_info_test__", False):
> > -                target_platform = lldb.DBG.GetSelectedPlatform(
> > -                ).GetTriple().split('-')[2]
> >
> >                 # If any debug info categories were explicitly tagged,
assume that list to be
> >                 # authoritative.  If none were specified, try with all
debug
> >                 # info formats.
> > -                all_dbginfo_categories = set(
> > -                    test_categories.debug_info_categories) -
set(configuration.skipCategories)
> > +                all_dbginfo_categories =
set(test_categories.debug_info_categories)

> Ditto. I'm not sure why it shouldn't be possible to skip debug info
categories.

It should still be possible to skip based on debug info categories. The
only difference is that before this patch passing say --skip-category dwo
would cause the dwo tests to not exist, whereas now they will still appear
in the test list (but they will be skipped).

This is the same way we use for auto-skipping libc++/libstdc++ support for
data formatter tests, and it works fine there. Did you actually check that
it is not possible to skip dsym tests?


More information about the lldb-commits mailing list