Skip to content
Snippets Groups Projects
Commit e7971025 authored by Georges Racinet's avatar Georges Racinet
Browse files

testhelpers: updating to hidden changesets

since this works by changing the target repo, this
is the most convenient way for end users.
parent e7762e3b
No related branches found
No related tags found
No related merge requests found
Pipeline #
...@@ -126,9 +126,9 @@ ...@@ -126,9 +126,9 @@
message=message)) message=message))
return repo[new_node] if return_ctx else new_node return repo[new_node] if return_ctx else new_node
def update_bin(self, bin_node): def update_bin(self, bin_node, **opts):
"""Update to a revision specified by its node in binary form. """Update to a revision specified by its node in binary form.
This is separated in order to avoid ambiguities This is separated in order to avoid ambiguities
""" """
# maybe we'll do something lower level later # maybe we'll do something lower level later
...@@ -130,7 +130,7 @@ ...@@ -130,7 +130,7 @@
"""Update to a revision specified by its node in binary form. """Update to a revision specified by its node in binary form.
This is separated in order to avoid ambiguities This is separated in order to avoid ambiguities
""" """
# maybe we'll do something lower level later # maybe we'll do something lower level later
self.update(node.hex(bin_node)) self.update(node.hex(bin_node), **opts)
...@@ -136,6 +136,6 @@ ...@@ -136,6 +136,6 @@
def update(self, rev): def update(self, rev, hidden=False):
repo = self.repo repo = self.repo.unfiltered() if hidden else self.repo
cmdutil.findcmd('update', commands.table)[1][0](repo.ui, repo, rev) cmdutil.findcmd('update', commands.table)[1][0](repo.ui, repo, rev)
def set_phase(self, phase_name, revs, force=True): def set_phase(self, phase_name, revs, force=True):
......
...@@ -4,8 +4,9 @@ ...@@ -4,8 +4,9 @@
# GNU General Public License version 2 or any later version. # GNU General Public License version 2 or any later version.
from __future__ import absolute_import from __future__ import absolute_import
from mercurial import ( from mercurial import (
error,
extensions, extensions,
phases, phases,
ui as uimod, ui as uimod,
) )
from os.path import dirname from os.path import dirname
...@@ -7,8 +8,9 @@ ...@@ -7,8 +8,9 @@
extensions, extensions,
phases, phases,
ui as uimod, ui as uimod,
) )
from os.path import dirname from os.path import dirname
import pytest
from ..testhelpers import ( from ..testhelpers import (
LocalRepoWrapper, LocalRepoWrapper,
...@@ -173,10 +175,10 @@ ...@@ -173,10 +175,10 @@
assert ctx.phase() == phases.draft assert ctx.phase() == phases.draft
def test_prune(tmpdir): def test_prune_update_hidden(tmpdir):
wrapper = LocalRepoWrapper.init(tmpdir, wrapper = LocalRepoWrapper.init(tmpdir,
config=dict(extensions=dict(evolve=''))) config=dict(extensions=dict(evolve='')))
wrapper.write_commit('foo', content='Foo 0') wrapper.write_commit('foo', content='Foo 0')
ctx = wrapper.write_commit('foo', content='Foo 1', return_ctx=True) ctx = wrapper.write_commit('foo', content='Foo 1', return_ctx=True)
wrapper.prune('.') wrapper.prune('.')
assert ctx.obsolete() assert ctx.obsolete()
...@@ -177,6 +179,15 @@ ...@@ -177,6 +179,15 @@
wrapper = LocalRepoWrapper.init(tmpdir, wrapper = LocalRepoWrapper.init(tmpdir,
config=dict(extensions=dict(evolve=''))) config=dict(extensions=dict(evolve='')))
wrapper.write_commit('foo', content='Foo 0') wrapper.write_commit('foo', content='Foo 0')
ctx = wrapper.write_commit('foo', content='Foo 1', return_ctx=True) ctx = wrapper.write_commit('foo', content='Foo 1', return_ctx=True)
wrapper.prune('.') wrapper.prune('.')
assert ctx.obsolete() assert ctx.obsolete()
wrapper.update(0)
assert tmpdir.join('foo').read() == 'Foo 0'
with pytest.raises(error.FilteredRepoLookupError):
wrapper.update(ctx.hex())
wrapper.update_bin(ctx.node(), hidden=True)
assert tmpdir.join('foo').read() == 'Foo 1'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment