view tests/test-editor-filename.t @ 47034:0d8ff1f4ab0c

revlog: add a `entry_binary` method on index The revlog index is already responsible for unpacking the binary entry, it would be simpler to make it responsible for packing them. In practice the C version of the index is already doing this internally. We introduce a "entry_binary" method that return the binary version of an existing revision. The method currently need to also take the revlog header to deal with the "first revision" special case. We will introduce further refactor in a later changeset to split that logic out. Differential Revision: https://phab.mercurial-scm.org/D10508
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Thu, 08 Apr 2021 00:01:11 +0200
parents ac362d5a7893
children 55c6ebd11cb9
line wrap: on
line source

Test temp file used with an editor has the expected suffix.

  $ hg init

Create an editor that writes its arguments to stdout and set it to $HGEDITOR.

  $ cat > editor.sh << EOF
  > echo "\$@"
  > exit 1
  > EOF
  $ hg add editor.sh
  $ HGEDITOR="sh $TESTTMP/editor.sh"
  $ export HGEDITOR

Verify that the path for a commit editor has the expected suffix.

  $ hg commit
  *.commit.hg.txt (glob)
  abort: edit failed: sh exited with status 1
  [250]

Verify that the path for a histedit editor has the expected suffix.

  $ cat >> $HGRCPATH <<EOF
  > [extensions]
  > rebase=
  > histedit=
  > EOF
  $ hg commit --message 'At least one commit for histedit.'
  $ hg histedit
  *.histedit.hg.txt (glob)
  abort: edit failed: sh exited with status 1
  [250]

Verify that when performing an action that has the side-effect of creating an
editor for a diff, the file ends in .diff.

  $ echo 1 > one
  $ echo 2 > two
  $ hg add
  adding one
  adding two
  $ hg commit --interactive --config ui.interactive=true --config ui.interface=text << EOF
  > y
  > e
  > q
  > EOF
  diff --git a/one b/one
  new file mode 100644
  examine changes to 'one'?
  (enter ? for help) [Ynesfdaq?] y
  
  @@ -0,0 +1,1 @@
  +1
  record change 1/2 to 'one'?
  (enter ? for help) [Ynesfdaq?] e
  
  *.diff (glob)
  editor exited with exit code 1
  record change 1/2 to 'one'?
  (enter ? for help) [Ynesfdaq?] q
  
  abort: user quit
  [250]