view tests/test-close-head.t @ 48873:5aafc3c5bdec

py3: use io.BytesIO directly Previously, pycompat.bytesio and pycompat.stringio referred to io.BytesIO. And util.bytesio and util.stringio aliased the pycompat symbols. This commit switches everything to use io.BytesIO directly. util.bytesio and util.stringio still exist to provide backwards compatibility, as they were the preferred symbols. Differential Revision: https://phab.mercurial-scm.org/D12252
author Gregory Szorc <gregory.szorc@gmail.com>
date Sun, 20 Feb 2022 15:03:26 -0700
parents fdd4d668ceb5
children
line wrap: on
line source

  $ hg init test-content
  $ cd test-content
  $ hg debugbuilddag '+2*2*3*4+7'
  $ hg bookmark -r 1 @
  $ hg log -G --template '{rev}:{node|short}'
  o  11:1d876b1f862c
  |
  o  10:ea5f71948eb8
  |
  o  9:f1b0356d867a
  |
  o  8:e8d1253fb0d7
  |
  o  7:d423bbba4459
  |
  o  6:a2f58e9c1e56
  |
  o  5:3a367db1fabc
  |
  o  4:e7bd5218ca15
  |
  | o  3:6100d3090acf
  |/
  | o  2:fa942426a6fd
  |/
  | o  1:66f7d451a68b
  |/
  o  0:1ea73414a91b
  
  $ hg --config extensions.closehead= close-head -m 'Not a head' 0 1
  abort: revision is not an open head: 0
  [255]
  $ hg --config extensions.closehead= close-head -m 'Not a head' -r 0 1
  abort: revision is not an open head: 0
  [255]
  $ hg id
  000000000000
  $ hg --config extensions.closehead= close-head -m 'Close old heads' -r 1 2
  $ hg id
  000000000000
  $ hg bookmark
     @                         1:66f7d451a68b
  $ hg heads
  changeset:   11:1d876b1f862c
  user:        debugbuilddag
  date:        Thu Jan 01 00:00:11 1970 +0000
  summary:     r11
  
  changeset:   3:6100d3090acf
  parent:      0:1ea73414a91b
  user:        debugbuilddag
  date:        Thu Jan 01 00:00:03 1970 +0000
  summary:     r3
  
  $ hg --config extensions.closehead= close-head -m 'Close more old heads' -r 11
  $ hg heads
  changeset:   3:6100d3090acf
  parent:      0:1ea73414a91b
  user:        debugbuilddag
  date:        Thu Jan 01 00:00:03 1970 +0000
  summary:     r3
  
  $ hg --config extensions.closehead= close-head -m 'Not a head' 0
  abort: revision is not an open head: 0
  [255]
  $ hg --config extensions.closehead= close-head -m 'Already closed head' 1
  abort: revision is not an open head: 1
  [255]

  $ hg init ../test-empty
  $ cd ../test-empty
  $ hg debugbuilddag '+1'
  $ hg log -G --template '{rev}:{node|short}'
  o  0:1ea73414a91b
  
  $ hg --config extensions.closehead= close-head -m 'Close initial revision' 0
  $ hg heads
  [1]