I think recently we are trying to reduce the number of decorators we are having so adding a few new Ubuntu specific decorators might not be a good idea. My suggestion would be to move on a little bit to the functional programming style with adding a new option to @expetedFailureAll where we can specify a function what have to evaluate to true for the decorator to be considered (and it is evaluated only after all other condition of @expectedFailureAll). Then we can create a free function called getLinuxDistribution what will return the distribution id and then as a final step we can specify a lambda to expetedFailureAll through its new argument what calls getLinuxDistribution and compares it with the right value. I know it is a lot of hoops to jump over to get a distribution specific decorator but I think this approach can handle arbitrarily complex skip/xfail conditions what will help us in the future.
What do you think? Thanks, Tamas On Fri, Jan 22, 2016 at 6:31 PM Todd Fiala <todd.fi...@gmail.com> wrote: > Hey all, > > What do you think about having some kind of way of marking the (in this > case, specifically) Ubuntu distribution for fail/skip test decorators? > I've had a few cases where I've needed to mark tests failing on for Ubuntu > where it really was only a particular release of an Ubuntu distribution, > and wasn't specifically the compiler. (i.e. it was a constellation of more > moving parts that clearly occur on a particular release of an Ubuntu > distribution but not on others, and certainly not generically across all > Linux distributions). > > I'd love to have a way to skip and xfail a test for a specific Ubuntu > distribution release. I guess it could be done uber-genrically, but with > Linux distributions this can get complicated due to the os/distribution > axes. So I'd be happy to start off with just having them at a distribution > basis: > > @skipIfUbuntu(version_check_list) # version_check_list contains one or > more version checks that, if passing, trigger the skip > > @expectedFailureUbuntu(version_check_list) # similar to above > > Or possibly more usefully, > > @skipIfLinuxDistribution(version_check_list) # version_check_list > contains one or more version checks that, if passing, trigger the skip, > includes the distribution > > @expectedFailureLinuxDistribution(version_check_list) # similar to above > > > It's not clear to me how to work in the os=linux, distribution=Ubuntu into > the more generic checks like and get distribution-level version checking > working right otherwise, but I'm open to suggestions. > > The workaround for the short term is to just use blanket-linux @skipIf and > @expectedFailure style calls. > > Thoughts? > -- > -Todd >
_______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev