[all-commits] [llvm/llvm-project] aaaa25: [libc++] Remove useless nothing_to_do.pass.cpp tests

Louis Dionne via All-commits all-commits at lists.llvm.org
Fri Apr 3 10:48:52 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: aaaa25e23db7af931b4354700f48027a034444ae
      https://github.com/llvm/llvm-project/commit/aaaa25e23db7af931b4354700f48027a034444ae
  Author: Louis Dionne <ldionne at apple.com>
  Date:   2020-04-03 (Fri, 03 Apr 2020)

  Changed paths:
    R libcxx/test/libcxx/extensions/nothing_to_do.pass.cpp
    R libcxx/test/nothing_to_do.pass.cpp
    R libcxx/test/std/algorithms/alg.modifying.operations/nothing_to_do.pass.cpp
    R libcxx/test/std/algorithms/alg.nonmodifying/nothing_to_do.pass.cpp
    R libcxx/test/std/algorithms/alg.sorting/alg.binary.search/nothing_to_do.pass.cpp
    R libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/nothing_to_do.pass.cpp
    R libcxx/test/std/algorithms/alg.sorting/alg.set.operations/nothing_to_do.pass.cpp
    R libcxx/test/std/algorithms/alg.sorting/alg.sort/nothing_to_do.pass.cpp
    R libcxx/test/std/algorithms/alg.sorting/nothing_to_do.pass.cpp
    R libcxx/test/std/atomics/atomics.general/nothing_to_do.pass.cpp
    R libcxx/test/std/atomics/atomics.types.operations/nothing_to_do.pass.cpp
    R libcxx/test/std/containers/container.adaptors/nothing_to_do.pass.cpp
    R libcxx/test/std/containers/container.requirements/associative.reqmts/nothing_to_do.pass.cpp
    R libcxx/test/std/containers/container.requirements/container.requirements.general/nothing_to_do.pass.cpp
    R libcxx/test/std/containers/container.requirements/nothing_to_do.pass.cpp
    R libcxx/test/std/containers/container.requirements/unord.req/nothing_to_do.pass.cpp
    R libcxx/test/std/containers/nothing_to_do.pass.cpp
    R libcxx/test/std/containers/sequences/nothing_to_do.pass.cpp
    R libcxx/test/std/depr/depr.auto.ptr/nothing_to_do.pass.cpp
    R libcxx/test/std/depr/depr.function.objects/depr.adaptors/nothing_to_do.pass.cpp
    R libcxx/test/std/depr/depr.function.objects/nothing_to_do.pass.cpp
    R libcxx/test/std/depr/depr.lib.binders/nothing_to_do.pass.cpp
    R libcxx/test/std/depr/exception.unexpected/nothing_to_do.pass.cpp
    R libcxx/test/std/depr/nothing_to_do.pass.cpp
    R libcxx/test/std/diagnostics/nothing_to_do.pass.cpp
    R libcxx/test/std/diagnostics/syserr/syserr.errcat/nothing_to_do.pass.cpp
    R libcxx/test/std/diagnostics/syserr/syserr.errcode/nothing_to_do.pass.cpp
    R libcxx/test/std/diagnostics/syserr/syserr.errcondition/nothing_to_do.pass.cpp
    R libcxx/test/std/diagnostics/syserr/syserr.syserr/nothing_to_do.pass.cpp
    R libcxx/test/std/experimental/func/func.searchers/nothing_to_do.pass.cpp
    R libcxx/test/std/experimental/func/nothing_to_do.pass.cpp
    R libcxx/test/std/experimental/iterator/nothing_to_do.pass.cpp
    R libcxx/test/std/experimental/memory/memory.polymorphic.allocator.class/nothing_to_do.pass.cpp
    R libcxx/test/std/experimental/memory/nothing_to_do.pass.cpp
    R libcxx/test/std/experimental/nothing_to_do.pass.cpp
    R libcxx/test/std/experimental/utilities/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/file.streams/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/iostream.format/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/iostreams.base/fpos/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/iostreams.base/ios.base/ios.types/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/iostreams.base/ios.base/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/iostreams.base/std.ios.manip/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/iostreams.requirements/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/stream.buffers/streambuf/streambuf.members/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/stream.buffers/streambuf/streambuf.protected/nothing_to_do.pass.cpp
    R libcxx/test/std/input.output/stream.buffers/streambuf/streambuf.virtuals/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/iterator.primitives/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/iterator.requirements/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/iterators.general/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/predef.iterators/insert.iterators/back.insert.iter.ops/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/predef.iterators/insert.iterators/front.insert.iter.ops/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/predef.iterators/insert.iterators/insert.iter.ops/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/predef.iterators/insert.iterators/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/predef.iterators/move.iterators/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/predef.iterators/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/predef.iterators/reverse.iterators/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/predef.iterators/reverse.iterators/reverse.iter.ops/nothing_to_do.pass.cpp
    R libcxx/test/std/iterators/stream.iterators/nothing_to_do.pass.cpp
    R libcxx/test/std/language.support/nothing_to_do.pass.cpp
    R libcxx/test/std/language.support/support.dynamic/alloc.errors/nothing_to_do.pass.cpp
    R libcxx/test/std/language.support/support.dynamic/new.delete/nothing_to_do.pass.cpp
    R libcxx/test/std/language.support/support.exception/exception.terminate/nothing_to_do.pass.cpp
    R libcxx/test/std/language.support/support.limits/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locale.categories/category.collate/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locale.categories/category.messages/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locale.categories/category.monetary/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locale.categories/category.numeric/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locale.categories/category.time/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locale.categories/facet.numpunct/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locales/locale.convenience/conversions/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locales/locale.convenience/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locales/locale/locale.types/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locales/locale/nothing_to_do.pass.cpp
    R libcxx/test/std/localization/locales/nothing_to_do.pass.cpp
    R libcxx/test/std/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/bit/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/numarray/class.gslice/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/numarray/class.slice/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/numarray/valarray.nonmembers/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/rand.adapt/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/rand.dis/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/rand.dis/rand.dist.bern/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/rand.dis/rand.dist.norm/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/rand.dis/rand.dist.pois/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/rand.dis/rand.dist.samp/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/rand.dis/rand.dist.uni/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/rand.eng/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/rand.req/nothing_to_do.pass.cpp
    R libcxx/test/std/numerics/rand/rand.util/nothing_to_do.pass.cpp
    R libcxx/test/std/re/nothing_to_do.pass.cpp
    R libcxx/test/std/re/re.alg/nothing_to_do.pass.cpp
    R libcxx/test/std/re/re.const/nothing_to_do.pass.cpp
    R libcxx/test/std/re/re.def/nothing_to_do.pass.cpp
    R libcxx/test/std/re/re.grammar/nothing_to_do.pass.cpp
    R libcxx/test/std/re/re.iter/nothing_to_do.pass.cpp
    R libcxx/test/std/re/re.regex/re.regex.nonmemb/nothing_to_do.pass.cpp
    R libcxx/test/std/strings/basic.string/string.modifiers/nothing_to_do.pass.cpp
    R libcxx/test/std/strings/basic.string/string.nonmembers/nothing_to_do.pass.cpp
    R libcxx/test/std/strings/basic.string/string.ops/nothing_to_do.pass.cpp
    R libcxx/test/std/strings/char.traits/char.traits.specializations/nothing_to_do.pass.cpp
    R libcxx/test/std/strings/char.traits/nothing_to_do.pass.cpp
    R libcxx/test/std/strings/string.view/string.view.template/nothing_to_do.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/nothing_to_do.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/nothing_to_do.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/nothing_to_do.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/nothing_to_do.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/nothing_to_do.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.once/nothing_to_do.pass.cpp
    R libcxx/test/std/thread/thread.req/nothing_to_do.pass.cpp
    R libcxx/test/std/thread/thread.req/thread.req.lockable/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/function.objects/bind/func.bind/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/function.objects/bind/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/function.objects/func.search/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/function.objects/func.wrap/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/intseq/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/memory/allocator.uses/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/memory/specialized.algorithms/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/memory/util.smartptr/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/meta/meta.trans/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/meta/meta.unary/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/smartptr/unique.ptr/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/smartptr/unique.ptr/unique.ptr.dltr/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/time/time.cal/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/time/time.clock/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/time/time.traits/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/utility.requirements/nothing_to_do.pass.cpp
    R libcxx/test/std/utilities/utility/pairs/nothing_to_do.pass.cpp
    R libcxx/test/support/nothing_to_do.pass.cpp

  Log Message:
  -----------
  [libc++] Remove useless nothing_to_do.pass.cpp tests

The testing script used to test libc++ historically did not like directories
without any testing files, so these tests had been added. Since this is
not necessary anymore, we can now remove these files. This has the benefit
that the total number of tests reflects the real number of tests more
closely, and we also skip some unnecessary work (especially relevant when
running tests over SSH).

However, some nothing_to_do.pass.cpp tests actually serve the purpose of
documenting that an area of the Standard doesn't need to be tested, or is
tested elsewhere. These files are not removed by this commit.

Removal done with:

  import os
  import itertools
  for (dirpath, dirnames, filenames) in itertools.chain(os.walk('./libcxx/test'),
                                                        os.walk('./libcxxabi/test')):
      if len(filenames + dirnames) > 1 and \
         any(p == 'nothing_to_do.pass.cpp' for p in filenames):
          os.remove(os.path.join(dirpath, 'nothing_to_do.pass.cpp'))




More information about the All-commits mailing list