Mads Kiilerich <madski@unity3d.com> [Sun, 25 May 2014 13:47:19 +0200] rev 21538
run-tests: fix invalid reference to stringescape after
a36cc85a5b7b
Durham Goode <durham@fb.com> [Fri, 09 May 2014 18:09:11 -0700] rev 21537
update: specify custom conflict markers for update (BC)
Add custom conflict markers 'working copy' and 'destination' for doing hg update
when there are conflicts between your working copy and the destination.
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 09 May 2014 16:13:14 -0700] rev 21536
run-tests: add docstrings
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 09 May 2014 15:55:58 -0700] rev 21535
run-tests: avoid duplicate code in vlog()
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Apr 2014 15:34:28 -0700] rev 21534
run-tests: make attributes of TestRunner internal
There is little reason for the data members of TestRunner to be public,
as they are implementation details. Enforce it through naming.
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Apr 2014 15:11:38 -0700] rev 21533
run-tests: make testdir an argument of TestSuite.__init__
With this change, TestSuite no longer accesses anything on TestRunner
and the TestRunner is no longer passed to TestSuite.
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Apr 2014 15:08:03 -0700] rev 21532
run-tests: move loop to a named argument of TestSuite.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Apr 2014 15:06:23 -0700] rev 21531
run-tests: make keywords a named argument to TestSuite.__init__
This was the last usage of option in ``TextTestRunner.run``.
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Apr 2014 15:03:06 -0700] rev 21530
run-tests: make retest a named argument of TestSuite.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Apr 2014 15:00:54 -0700] rev 21529
run-tests: move whitelist and blacklist to named arguments of TestSuite
Gregory Szorc <gregory.szorc@gmail.com> [Fri, 25 Apr 2014 14:51:53 -0700] rev 21528
run-tests: pass jobs into TestSuite constructor
This starts a series of patches that will lessen the importance of
TestRunner. It will remove the TestRunner instance stored inside the
TestSuite.
Durham Goode <durham@fb.com> [Fri, 16 May 2014 13:15:07 -0700] rev 21527
help: add local/other description to merge tool description
Adds a more detailed description of what 'local' and 'other' mean to the merge
tool documentation.
Durham Goode <durham@fb.com> [Thu, 08 May 2014 16:55:56 -0700] rev 21526
rebase: specify custom conflict marker labels for rebase (BC)
Changes rebase conflict markers to say 'source' and 'dest' instead of
'local' and 'other'. This ends up looking like:
one
<<<<<<< dest:
a3e5c7fd master - bob: "A commit to master"
master
=======
mine
>>>>>>> source:
c7fda3e5 - durham: "A commit to my feature branch"
three
Durham Goode <durham@fb.com> [Fri, 09 May 2014 18:15:02 -0700] rev 21525
graft: customize graft conflict markers (BC)
Changes the graft conflict markers to be 'graft' and 'local' to make it
more intuitive which side is which.
Durham Goode <durham@fb.com> [Thu, 08 May 2014 16:54:23 -0700] rev 21524
merge: add labels parameter from merge.update to filemerge
Adds a labels function parameter to all the functions between merge.update and
filemerge.filemerge. This will allow commands like rebase to specify custom
marker labels.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 13:32:05 -0700] rev 21523
run-tests: move interactive test acceptance into TestResult
We shouldn't be performing interactive prompting during test execution.
The first step of this is to move the functionality into TestResult.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 13:25:17 -0700] rev 21522
run-tests: raise WarnTest outside of Test.fail()
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 13:16:34 -0700] rev 21521
run-tests: move diff generation into TestResult
TestResult is the thing that captures all our test results. It's logical
for diff viewing to be handled there and not inside Test.
While writing this patch, it was discovered that Test.fail() was
printing redundant test result output. This has been removed.
Arguments controlling diffs have been removed from Test.__init__.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 12:35:18 -0700] rev 21520
run-tests: remove global abort flag
The global abort flag has been moved into each Test instance. A
Test.abort() accomplishing the same thing has been added.
Durham Goode <durham@fb.com> [Thu, 08 May 2014 16:50:22 -0700] rev 21519
merge: add conflict marker formatter (BC)
Adds a conflict marker formatter that can produce custom conflict marker
descriptions. It can be set via ui.mergemarkertemplate. The old behavior
can be used still by setting ui.mergemarkers=basic.
The default format is similar to:
{node|short} {tag} {branch} {bookmarks} - {author}: "{desc|firstline}"
And renders as:
contextblahblah
<<<<<<< local:
c7fdd7ce4652 - durham: "Fix broken stuff in my feature branch"
line from my changes
=======
line from the other changes
>>>>>>> other:
a3e55d7f4d38 master - sid0: "This is a commit to master th...
morecontextblahblah
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 12:20:10 -0700] rev 21518
run-tests: remove options from Test.__init__
All options are now passed as arguments and we no longer need options.
This enables us to instantiate Test from "plain old data" types. Since
options must be given as arguments, it also makes people think harder
about adding things that may not belong in Test. This will help ensure a
proper separation of responsibility going forward.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 12:17:23 -0700] rev 21517
run-tests: move shell to Test.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 12:15:55 -0700] rev 21516
run-tests: move py3kwarnings to Test.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 12:13:40 -0700] rev 21515
run-tests: move extra config options to Test.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 12:10:25 -0700] rev 21514
run-tests: refactor port number declaration
Instead of making port numbers derived from count and a global initial
port, we now pass a start port to Test.__init__ and do the calculation
at a higher level.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 12:04:15 -0700] rev 21513
run-tests: move timeout into Test.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 12:01:31 -0700] rev 21512
run-tests: move interactive to Test.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 11:58:32 -0700] rev 21511
run-tests: move diff options into arguments of Test.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 11:44:34 -0700] rev 21510
run-tests: move debug into an argument to Test.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 11:41:10 -0700] rev 21509
run-tests: factor options.keep_tmpdir into an argument to Test.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 12:29:33 -0700] rev 21508
run-tests: remove redundant test name filter
TestSuite.run() doesn't need to filter tests by name because that
already happens elsewhere. Garbage in garbage out applies.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 11:38:14 -0700] rev 21507
run-tests: move test filtering into TestSuite.run()
Upcoming patches will move the execution of tests to separate processes.
To facilitate this, it makes sense to move logic out of Test.
Furthermore, test filtering is logically the domain of the test runner,
not the test itself.
This patch interrupts our mini series of factoring options into named
arguments because filtering consults many options and it is easier to
move this logic out of Test sooner so we don't have to introduce
arguments at all.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 10:13:41 -0700] rev 21506
run-tests: no longer pass a TestRunner into Test.__init__
We no longer access any attributes on TestRunner besides options, so we
stop passing a TestRunner to Test.__init__ and now pass the options
data structure instead.
Subsequent patches will move accessed options attributes into named
arguments.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 10:12:19 -0700] rev 21505
run-tests: pass abort into Test.__init__
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 10:05:32 -0700] rev 21504
run-tests: pass temp dir into Test.__init__
This patch starts a mini series of moving arguments to Test.__init__
from semi-complex data structures (such as the command options) to named
arguments. This will allow Test instances to be more easily instantiated
from other contexts. This improves the ability to run Mercurial tests in
new and different environments.
Stephen Lee <sphen.lee@gmail.com> [Thu, 07 Mar 2013 14:17:56 +1100] rev 21503
update: show message when a bookmark is activated by update
When updating to a bookmark, mention that the bookmark is now
active. This is a reminder that update does not move the
current bookmark if an explicit target is given - instead
it activates that target.
Gregory Szorc <gregory.szorc@gmail.com> [Tue, 22 Apr 2014 10:01:22 -0700] rev 21502
run-tests: pass a full test path into Test.__init__
Previously, a Test's path came from the base directory of all tests and
a filename leaf. There is not a strong reason why an absolute test path
can not be specified.
This change isn't strictly necessary. But it does enable scenarios such
as more easily running tests from multiple, non-sibling directories.
Gregory Szorc <gregory.szorc@gmail.com> [Mon, 21 Apr 2014 16:43:36 -0700] rev 21501
run-tests: factor refpath into Test classes
refpath is a side-effect of the test type. We therefore move it to the
Test class implementations.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 18:23:48 -0700] rev 21500
run-tests: don't trap exceptions in Test.runTest()
Exceptions are all handled in Test.run(). This code was redundant since
the unittest test wrapper class was merged into Test.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 18:20:24 -0700] rev 21499
run-tests: factor options out of run()
We were only utilizing 2 parts of options. These have been converted to
named arguments.
Mads Kiilerich <madski@unity3d.com> [Fri, 16 May 2014 02:30:27 +0200] rev 21498
convert: mercurial source: convert global tags only - not local tags
Mercurial tags can be local (tag -l, stored in .hg/localtags) or global (normal
tags, tracked in .hgtags) ... or extensions can add other kind of tags.
Convert would take all tags (except "tip"), not just the ones from .hgtags, and
put them into .hgtags.
Instead, convert only the global tags that come from .hgtags.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 18:15:38 -0700] rev 21497
run-tests: refactor temporary directories in Test
We no longer need cleanup() because setUp() and tearDown() cover it. We
move tempdir creation into setUp() and always delete in tearDown()
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 17:42:31 -0700] rev 21496
run-tests: move _executetests into TestSuite
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 17:39:26 -0700] rev 21495
run-tests: capture execution times in TestResult
TestResult has facilities for recording when tests start and stop. It
makes sense to move execution time recording into TestResult.
In addition, output generation is being moved into TestResult, a class
that has a concept of an output buffer (and a lock).
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 17:28:24 -0700] rev 21494
run-tests: move outputtimes() into unittest runner class
The unittest runner now does all the printing. Move outputtimes() there.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 17:21:24 -0700] rev 21493
run-tests: refactor how times are recorded
We now record times in Test.run(), which is a more appropriate place for
it.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 17:13:10 -0700] rev 21492
run-tests: eliminate Test._result
The result of test execution is now reported on a TestResult. We no
longer need to store a tuple of the result.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 17:10:49 -0700] rev 21491
run-tests: replace Test.ignore() with raise IgnoreTest
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 17:09:52 -0700] rev 21490
run-tests: replace Test.skip() with raise SkipTest
All the result functions now raise an Exception. We no longer need these
functions and we can inline the raise.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 17:06:57 -0700] rev 21489
run-tests: remove some legacy code around result handling
unittest handles all results now. We no longer need to manually keep
track of results.
Gregory Szorc <gregory.szorc@gmail.com> [Sun, 20 Apr 2014 17:04:42 -0700] rev 21488
run-tests: merge MercurialTest into Test
Now that we execute all tests via unittest, the MercurialTest wrapper is
not necessary. This patches moves the logic from MercurialTest into Test
and makes Test a child of unittest.TestCase.
Steven Brown <StevenGBrown@gmail.com> [Sat, 17 May 2014 17:11:06 +0800] rev 21487
check-code: check for consistent usage of the websub filter in hgweb templates
The check-code tool now expects the "desc" keyword to be followed by the
"websub" filter, with the following exceptions:
a) It has no filters at all, e.g. a changeset description in the raw style
templates or the repository description in the summary page.
b) It is followed by the "firstline" filter, e.g. the first line of the
changeset description is displayed as a summary or title.
Steven Brown <StevenGBrown@gmail.com> [Sat, 17 May 2014 17:10:23 +0800] rev 21486
hgweb: apply websub filter to the changeset description in rss and atom feeds
For example, this is useful for linking from the feed reader to a bug tracker.
This follows the existing pattern used within the hgweb templates. With the
exception of the raw style, all usages of the changeset "desc" keyword are now
followed by either the "firstline" filter or the "websub" filter. When "websub"
is used, it always follows the "escape" filter.
Steven Brown <StevenGBrown@gmail.com> [Sat, 17 May 2014 17:09:46 +0800] rev 21485
tests: write the hgrc file for test-hgweb-commands.t with cat instead of echo
To improve the readability.
Steven Brown <StevenGBrown@gmail.com> [Sat, 17 May 2014 17:09:10 +0800] rev 21484
tests: tests for the rss feeds
This matches the existing tests for the atom feeds.
Sean Farley <sean.michael.farley@gmail.com> [Wed, 23 Apr 2014 15:54:26 -0500] rev 21483
localrepo: use _matchstatus of context objects
Now that we have the machinery in place, we call the context method for
changing the match object in the case of comparing the working directory with
its parent.
This removes the last of the hard-coded workingctx knowledge in localrepo
paving the way for us to remove localrepo.status completely.
Sean Farley <sean.michael.farley@gmail.com> [Thu, 24 Apr 2014 08:32:28 -0500] rev 21482
workingctx: override _matchstatus for parentworking case
This patch encapsulate the logic for changing the match.bad function when
comparing against the working directory's parent. Future patches will remove
more of the 'if ... else' blocks in localrepo.status that test for this working
directory parent case.
Sean Farley <sean.michael.farley@gmail.com> [Wed, 23 Apr 2014 15:39:30 -0500] rev 21481
basectx: add _matchstatus method for factoring out last of parentworking logic
This patch paves the way to allow a workingctx to override the match object
with a custom 'bad' method for cases where status is sent a directory pattern.
Sean Farley <sean.michael.farley@gmail.com> [Thu, 24 Apr 2014 08:34:44 -0500] rev 21480
workingctx: use inheritance for _buildstatus while keeping the fastpath
This patch maintains the fast path for workingctx which is to not build a
manifest if the working directory is being compared to its parent since, in
this case, we can just copy the parent manifest.
Sean Farley <sean.michael.farley@gmail.com> [Tue, 22 Apr 2014 19:06:37 -0500] rev 21479
localrepo: remove unneeded unpacking of r
This unpacking is unneeded now because previous patches have removed the need
for this method to modify each of these variables in favor of passing the whole
set around to pre/post hook methods of the corresponding context object.