[llvm-commits] [zorg] r171416 - in /zorg/trunk/zorg/buildbot: builders/ClangBuilder.py builders/LNTBuilder.py commands/LitTestCommand.py commands/__init__.py

David Blaikie dblaikie at gmail.com
Sat Jan 5 10:18:51 PST 2013


On Sat, Jan 5, 2013 at 12:15 AM, NAKAMURA Takumi <geek4civic at gmail.com> wrote:
> David, as I addressed in PR11317, I don't agree to delete LitTestCommand.
> http://llvm.org/bugs/show_bug.cgi?id=11317
> (It could be closed as RESOLVED. I could file new one instead.)
>
> FYI, my builders are using LitTestCommand.

Is there any particular reason? Perhaps we could discuss the relevant
differences between the two & figure out if/how they can be
aggregated. They seemed similar enough to me that it was a fairly
arbitrary choice based on which one was used more often. I'm open to
other ideas.

>
> ...Takumi
>
> 2013/1/3 David Blaikie <dblaikie at gmail.com>:
>> Author: dblaikie
>> Date: Wed Jan  2 15:50:47 2013
>> New Revision: 171416
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=171416&view=rev
>> Log:
>> Remove redundant LitTestCommand in favor of ClangTestCommand.
>>
>> The latter could be renamed to LitTestCommand (as per the FIXIT) at some point.
>>
>> My first intention, though, is to smoosh StandardTest into ClangTestCommand and
>> then make it a bit more functional, including reporting all kinds of lit
>> results rather than just warn/pass/fail.
>>
>> Removed:
>>     zorg/trunk/zorg/buildbot/commands/LitTestCommand.py
>> Modified:
>>     zorg/trunk/zorg/buildbot/builders/ClangBuilder.py
>>     zorg/trunk/zorg/buildbot/builders/LNTBuilder.py
>>     zorg/trunk/zorg/buildbot/commands/__init__.py
>>
>> Modified: zorg/trunk/zorg/buildbot/builders/ClangBuilder.py
>> URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/builders/ClangBuilder.py?rev=171416&r1=171415&r2=171416&view=diff
>> ==============================================================================
>> --- zorg/trunk/zorg/buildbot/builders/ClangBuilder.py (original)
>> +++ zorg/trunk/zorg/buildbot/builders/ClangBuilder.py Wed Jan  2 15:50:47 2013
>> @@ -12,7 +12,6 @@
>>  from zorg.buildbot.commands import DejaGNUCommand
>>  from zorg.buildbot.commands.BatchFileDownload import BatchFileDownload
>>  from zorg.buildbot.commands.ClangTestCommand import ClangTestCommand
>> -from zorg.buildbot.commands.LitTestCommand import LitTestCommand
>>  from zorg.buildbot.PhasedBuilderUtils import GetLatestValidated, find_cc
>>
>>  def getClangBuildFactory(
>> @@ -745,12 +744,8 @@
>>      # Save artifacts of this build for use by other builders.
>>      f = uploadArtifacts(f)
>>      # Run the LLVM and Clang regression tests.
>> -    f.addStep(LitTestCommand(name='run.llvm.tests', haltOnFailure=True,
>> +    f.addStep(ClangTestCommand(name='check-all', haltOnFailure=True,
>>                               command=['make', '-j', WithProperties('%(jobs)s'),
>> -                             'VERBOSE=1'], description=['llvm', 'tests'],
>> -                             workdir='%s/test' % clang_build_dir))
>> -    f.addStep(LitTestCommand(name='run.clang.tests', haltOnFailure=True,
>> -                             command=['make', '-j', WithProperties('%(jobs)s'),
>> -                             'VERBOSE=1'], description=['clang', 'tests'],
>> -                             workdir='%s/tools/clang/test' % clang_build_dir))
>> +                             'VERBOSE=1'], description=['all', 'tests'],
>> +                             workdir=clang_build_dir))
>>      return f
>>
>> Modified: zorg/trunk/zorg/buildbot/builders/LNTBuilder.py
>> URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/builders/LNTBuilder.py?rev=171416&r1=171415&r2=171416&view=diff
>> ==============================================================================
>> --- zorg/trunk/zorg/buildbot/builders/LNTBuilder.py (original)
>> +++ zorg/trunk/zorg/buildbot/builders/LNTBuilder.py Wed Jan  2 15:50:47 2013
>> @@ -124,7 +124,7 @@
>>      if parallel:
>>          args.extend(['-j', WithProperties(jobs)])
>>      args.extend(nt_flags)
>> -    f.addStep(zorg.buildbot.commands.LitTestCommand.LitTestCommand(
>> +    f.addStep(zorg.buildbot.commands.ClangTestCommand.ClangTestCommand(
>>              name='lnt.nightly-test', command=args, haltOnFailure=True,
>>              description=['nightly test'], workdir='tests',
>>              logfiles={'configure.log' : 'nt/build/configure.log',
>>
>> Removed: zorg/trunk/zorg/buildbot/commands/LitTestCommand.py
>> URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/commands/LitTestCommand.py?rev=171415&view=auto
>> ==============================================================================
>> --- zorg/trunk/zorg/buildbot/commands/LitTestCommand.py (original)
>> +++ zorg/trunk/zorg/buildbot/commands/LitTestCommand.py (removed)
>> @@ -1,50 +0,0 @@
>> -import re
>> -import StandardizedTest
>> -
>> -class LitTestCommand(StandardizedTest.StandardizedTest):
>> -  kTestLineRE = re.compile(r'([^ ]*): (.*) \(.*.*\)')
>> -  kTestFailureLogStartRE = re.compile(r"""\*{4,80} TEST '(.*)' .*""")
>> -  kTestFailureLogStopRE = re.compile(r"""\*{10,80}""")
>> -
>> -  def parseLog(self, lines):
>> -    results = []
>> -    results_by_name = {}
>> -    failureLogs = []
>> -    lines = self.getLog('stdio').readlines()
>> -
>> -    it = iter(lines)
>> -    inFailure = None
>> -    for ln in it:
>> -      # See if we are inside a failure log.
>> -      if inFailure:
>> -        inFailure[1].append(ln)
>> -        if self.kTestFailureLogStopRE.match(ln):
>> -          name,log = inFailure
>> -          if name not in results_by_name:
>> -            raise ValueError,'Invalid log result with no status line!'
>> -          results_by_name[name][2] = ''.join(log) + '\n'
>> -          inFailure = None
>> -        continue
>> -
>> -      ln = ln.strip()
>> -      if not ln:
>> -        continue
>> -
>> -      # Check for test failure logs.
>> -      m = self.kTestFailureLogStartRE.match(ln)
>> -      if m:
>> -        inFailure = (m.group(1), [ln])
>> -        continue
>> -
>> -      # Otherwise expect a test status line.
>> -      m = self.kTestLineRE.match(ln)
>> -      if m:
>> -        code, name = m.group(1),m.group(2)
>> -        results.append( [code, name, None] )
>> -        results_by_name[name] = results[-1]
>> -
>> -    if inFailure:
>> -      raise ValueError,("Unexpected clang test running output, "
>> -                        "unterminated failure log!")
>> -
>> -    return results
>>
>> Modified: zorg/trunk/zorg/buildbot/commands/__init__.py
>> URL: http://llvm.org/viewvc/llvm-project/zorg/trunk/zorg/buildbot/commands/__init__.py?rev=171416&r1=171415&r2=171416&view=diff
>> ==============================================================================
>> --- zorg/trunk/zorg/buildbot/commands/__init__.py (original)
>> +++ zorg/trunk/zorg/buildbot/commands/__init__.py Wed Jan  2 15:50:47 2013
>> @@ -1,7 +1,6 @@
>>  import AnalyzerCompareCommand
>>  import BatchFileDownload
>>  import ClangTestCommand
>> -import LitTestCommand
>>  import DejaGNUCommand
>>  import GTestCommand
>>
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits



More information about the llvm-commits mailing list