bookmarks: test for exchanging long bookmark names (
issue5165)
As far as I can tell a test for a long bookmark name never actually
got added when this was fixed. Let's document that a 300 byte bookmark
is something we're supporting (this patch started out life over a year
ago as a way for me to validate the problem, and I recently found it.)
I think the nonzero exits from the push operations are only because no
new changesets get exchanged. Please correct me if I'm wrong on that. :)
Differential Revision: https://phab.mercurial-scm.org/D2727
--- a/tests/test-bookmarks-pushpull.t Sun Mar 04 11:46:03 2018 -0500
+++ b/tests/test-bookmarks-pushpull.t Mon Aug 29 10:42:58 2016 -0400
@@ -1030,6 +1030,34 @@
no changes found
[1]
+Pushing a really long bookmark should work fine (issue5165)
+===============================================
+
+#if b2-binary
+ >>> open('longname', 'w').write('wat' * 100)
+ $ hg book `cat longname`
+ $ hg push -B `cat longname` ../unchanged-b
+ pushing to ../unchanged-b
+ searching for changes
+ no changes found
+ exporting bookmark (wat){100} (re)
+ [1]
+ $ hg -R ../unchanged-b book --delete `cat longname`
+
+Test again but forcing bundle2 exchange to make sure that doesn't regress.
+
+ $ hg push -B `cat longname` ../unchanged-b --config devel.legacy.exchange=bundle1
+ pushing to ../unchanged-b
+ searching for changes
+ no changes found
+ exporting bookmark (wat){100} (re)
+ [1]
+ $ hg -R ../unchanged-b book --delete `cat longname`
+ $ hg book --delete `cat longname`
+ $ hg co @
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ (activating bookmark @)
+#endif
Check hook preventing push (issue4455)
======================================