Show More
@@ -747,28 +747,7 b' def linematch(el, l):' | |||
|
747 | 747 | return '+glob' |
|
748 | 748 | return False |
|
749 | 749 | |
|
750 | def tsttest(t, test, wd, options, replacements, env): | |
|
751 | f = open(test) | |
|
752 | tlines = f.readlines() | |
|
753 | f.close() | |
|
754 | ||
|
755 | salt, script, after, expected = t._parsetest(tlines, wd) | |
|
756 | ||
|
757 | # Write out the script and execute it | |
|
758 | name = wd + '.sh' | |
|
759 | f = open(name, 'w') | |
|
760 | for l in script: | |
|
761 | f.write(l) | |
|
762 | f.close() | |
|
763 | ||
|
764 | cmd = '%s "%s"' % (options.shell, name) | |
|
765 | vlog("# Running", cmd) | |
|
766 | exitcode, output = run(cmd, wd, options, replacements, env) | |
|
767 | # do not merge output if skipped, return hghave message instead | |
|
768 | # similarly, with --debug, output is None | |
|
769 | if exitcode == SKIPPED_STATUS or output is None: | |
|
770 | return exitcode, output | |
|
771 | ||
|
750 | def tsttest(t, wd, options, salt, after, expected, exitcode, output): | |
|
772 | 751 | # Merge the script output back into a unified test |
|
773 | 752 | |
|
774 | 753 | warnonly = 1 # 1: not yet, 2: yes, 3: for sure not |
@@ -833,8 +812,30 b' class TTest(Test):' | |||
|
833 | 812 | """A "t test" is a test backed by a .t file.""" |
|
834 | 813 | |
|
835 | 814 | def _run(self, testtmp, replacements, env): |
|
836 | return tsttest(self, self._path, testtmp, self._options, replacements, | |
|
837 | env) | |
|
815 | f = open(self._path) | |
|
816 | lines = f.readlines() | |
|
817 | f.close() | |
|
818 | ||
|
819 | salt, script, after, expected = self._parsetest(lines, testtmp) | |
|
820 | ||
|
821 | # Write out the generated script. | |
|
822 | fname = '%s.sh' % testtmp | |
|
823 | f = open(fname, 'w') | |
|
824 | for l in script: | |
|
825 | f.write(l) | |
|
826 | f.close() | |
|
827 | ||
|
828 | cmd = '%s "%s"' % (self._options.shell, fname) | |
|
829 | vlog("# Running", cmd) | |
|
830 | ||
|
831 | exitcode, output = run(cmd, testtmp, self._options, replacements, env) | |
|
832 | # Do not merge output if skipped. Return hghave message instead. | |
|
833 | # Similarly, with --debug, output is None. | |
|
834 | if exitcode == SKIPPED_STATUS or output is None: | |
|
835 | return exitcode, output | |
|
836 | ||
|
837 | return tsttest(self, testtmp, self._options, salt, after, expected, | |
|
838 | exitcode, output) | |
|
838 | 839 | |
|
839 | 840 | def _hghave(self, reqs, testtmp): |
|
840 | 841 | # TODO do something smarter when all other uses of hghave are gone. |
General Comments 0
You need to be logged in to leave comments.
Login now