tests/test-hybridencode.py
author Gregory Szorc <gregory.szorc@gmail.com>
Sat, 27 Feb 2016 18:22:49 -0800
branchstable
changeset 28289 d493d64757eb
parent 25027 297ea0df75d0
child 28749 2fa5c7c1df8c
permissions -rw-r--r--
hg: obtain lock when creating share from pooled repo (issue5104) There are race conditions between clients performing a shared clone to pooled storage: 1) Clients race to create the new shared repo in the pool directory 2) 1 client is seeding the repo in the pool directory and another goes to share it before it is fully cloned We prevent these race conditions by obtaining a lock in the pool directory that is derived from the name of the repo we will be accessing. To test this, a simple generic "lockdelay" extension has been added. The extension inserts an optional, configurable delay before or after lock acquisition. In the test, we delay 2 seconds after lock acquisition in the first process and 1 second before lock acquisition in the 2nd process. This means the first process has 1s to obtain the lock. There is a race condition here. If we encounter it in the wild, we could change the dummy extension to wait on the lock file to appear instead of relying on timing. But that's more complicated. Let's see what happens first.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17622
57bf86677daa test-hybridencode: use store._dothybridencode(s)
Adrian Buehlmann <adrian@cadifra.com>
parents: 17617
diff changeset
     1
from mercurial import store
7275
c00cdac22d3c add new test-hybridencode.py
Adrian Buehlmann <adrian@cadifra.com>
parents:
diff changeset
     2
c00cdac22d3c add new test-hybridencode.py
Adrian Buehlmann <adrian@cadifra.com>
parents:
diff changeset
     3
def show(s):
17622
57bf86677daa test-hybridencode: use store._dothybridencode(s)
Adrian Buehlmann <adrian@cadifra.com>
parents: 17617
diff changeset
     4
    # show test input
17432
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
     5
    print "A = '%s'" % s.encode("string_escape")
17622
57bf86677daa test-hybridencode: use store._dothybridencode(s)
Adrian Buehlmann <adrian@cadifra.com>
parents: 17617
diff changeset
     6
57bf86677daa test-hybridencode: use store._dothybridencode(s)
Adrian Buehlmann <adrian@cadifra.com>
parents: 17617
diff changeset
     7
    # show the result of the C implementation, if available
18435
8c019d2fd7c0 store: switch to C-based hashed path encoding
Bryan O'Sullivan <bryano@fb.com>
parents: 17690
diff changeset
     8
    h = store._pathencode(s)
17622
57bf86677daa test-hybridencode: use store._dothybridencode(s)
Adrian Buehlmann <adrian@cadifra.com>
parents: 17617
diff changeset
     9
    print "B = '%s'" % h.encode("string_escape")
57bf86677daa test-hybridencode: use store._dothybridencode(s)
Adrian Buehlmann <adrian@cadifra.com>
parents: 17617
diff changeset
    10
57bf86677daa test-hybridencode: use store._dothybridencode(s)
Adrian Buehlmann <adrian@cadifra.com>
parents: 17617
diff changeset
    11
    # compare it with reference implementation in Python
57bf86677daa test-hybridencode: use store._dothybridencode(s)
Adrian Buehlmann <adrian@cadifra.com>
parents: 17617
diff changeset
    12
    r = store._hybridencode(s, True)
57bf86677daa test-hybridencode: use store._dothybridencode(s)
Adrian Buehlmann <adrian@cadifra.com>
parents: 17617
diff changeset
    13
    if h != r:
57bf86677daa test-hybridencode: use store._dothybridencode(s)
Adrian Buehlmann <adrian@cadifra.com>
parents: 17617
diff changeset
    14
        print "R = '%s'" % r.encode("string_escape")
7275
c00cdac22d3c add new test-hybridencode.py
Adrian Buehlmann <adrian@cadifra.com>
parents:
diff changeset
    15
    print
c00cdac22d3c add new test-hybridencode.py
Adrian Buehlmann <adrian@cadifra.com>
parents:
diff changeset
    16
17432
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    17
show("data/abcdefghijklmnopqrstuvwxyz0123456789 !#%&'()+,-.;=[]^`{}")
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    18
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    19
print "uppercase char X is encoded as _x"
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    20
show("data/ABCDEFGHIJKLMNOPQRSTUVWXYZ")
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    21
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    22
print "underbar is doubled"
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    23
show("data/_")
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    24
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    25
print "tilde is character-encoded"
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    26
show("data/~")
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    27
17444
d527ac9f011d test-hybridencode: remove x00 character case
Adrian Buehlmann <adrian@cadifra.com>
parents: 17440
diff changeset
    28
print "characters in ASCII code range 1..31"
d527ac9f011d test-hybridencode: remove x00 character case
Adrian Buehlmann <adrian@cadifra.com>
parents: 17440
diff changeset
    29
show('data/\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f'
17432
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    30
          '\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    31
17445
e5422a9ffe9d test-hybridencode: test full range of ASCII codes from 126 to 255
Adrian Buehlmann <adrian@cadifra.com>
parents: 17444
diff changeset
    32
print "characters in ASCII code range 126..255"
e5422a9ffe9d test-hybridencode: test full range of ASCII codes from 126 to 255
Adrian Buehlmann <adrian@cadifra.com>
parents: 17444
diff changeset
    33
show('data/\x7e\x7f'
e5422a9ffe9d test-hybridencode: test full range of ASCII codes from 126 to 255
Adrian Buehlmann <adrian@cadifra.com>
parents: 17444
diff changeset
    34
          '\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f'
e5422a9ffe9d test-hybridencode: test full range of ASCII codes from 126 to 255
Adrian Buehlmann <adrian@cadifra.com>
parents: 17444
diff changeset
    35
          '\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f')
e5422a9ffe9d test-hybridencode: test full range of ASCII codes from 126 to 255
Adrian Buehlmann <adrian@cadifra.com>
parents: 17444
diff changeset
    36
show('data/\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf'
e5422a9ffe9d test-hybridencode: test full range of ASCII codes from 126 to 255
Adrian Buehlmann <adrian@cadifra.com>
parents: 17444
diff changeset
    37
          '\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf')
e5422a9ffe9d test-hybridencode: test full range of ASCII codes from 126 to 255
Adrian Buehlmann <adrian@cadifra.com>
parents: 17444
diff changeset
    38
show('data/\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf'
e5422a9ffe9d test-hybridencode: test full range of ASCII codes from 126 to 255
Adrian Buehlmann <adrian@cadifra.com>
parents: 17444
diff changeset
    39
          '\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf')
e5422a9ffe9d test-hybridencode: test full range of ASCII codes from 126 to 255
Adrian Buehlmann <adrian@cadifra.com>
parents: 17444
diff changeset
    40
show('data/\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef'
e5422a9ffe9d test-hybridencode: test full range of ASCII codes from 126 to 255
Adrian Buehlmann <adrian@cadifra.com>
parents: 17444
diff changeset
    41
          '\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff')
17432
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    42
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    43
print "Windows reserved characters"
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    44
show('data/less <, greater >, colon :, double-quote ", backslash \\'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    45
           ', pipe |, question-mark ?, asterisk *')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    46
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    47
print "encoding directories ending in .hg, .i or .d with '.hg' suffix"
17593
9e31a72bede7 test-hybridencode: add a case for direncode
Adrian Buehlmann <adrian@cadifra.com>
parents: 17590
diff changeset
    48
show('data/x.h.i/x.hg/x.i/x.d/foo')
17540
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    49
show('data/a.hg/a.i/a.d/foo')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    50
show('data/au.hg/au.i/au.d/foo')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    51
show('data/aux.hg/aux.i/aux.d/foo')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    52
show('data/auxy.hg/auxy.i/auxy.d/foo')
17432
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    53
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    54
print "but these are not encoded on *filenames*"
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    55
show('data/foo/x.hg')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    56
show('data/foo/x.i')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    57
show('data/foo/x.d')
17540
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    58
show('data/foo/a.hg')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    59
show('data/foo/a.i')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    60
show('data/foo/a.d')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    61
show('data/foo/au.hg')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    62
show('data/foo/au.i')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    63
show('data/foo/au.d')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    64
show('data/foo/aux.hg')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    65
show('data/foo/aux.i')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    66
show('data/foo/aux.d')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    67
show('data/foo/auxy.hg')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    68
show('data/foo/auxy.i')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
    69
show('data/foo/auxy.d')
17432
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    70
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    71
print "plain .hg, .i and .d directories have the leading dot encoded"
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    72
show('data/.hg/.i/.d/foo')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    73
7275
c00cdac22d3c add new test-hybridencode.py
Adrian Buehlmann <adrian@cadifra.com>
parents:
diff changeset
    74
show('data/aux.bla/bla.aux/prn/PRN/lpt/com3/nul/coma/foo.NUL/normal.c.i')
c00cdac22d3c add new test-hybridencode.py
Adrian Buehlmann <adrian@cadifra.com>
parents:
diff changeset
    75
8659
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    76
show('data/AUX/SECOND/X.PRN/FOURTH/FI:FTH/SIXTH/SEVENTH/EIGHTH/NINETH/'
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    77
     'TENTH/ELEVENTH/LOREMIPSUM.TXT.i')
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    78
show('data/enterprise/openesbaddons/contrib-imola/corba-bc/netbeansplugin/'
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    79
     'wsdlExtension/src/main/java/META-INF/services/org.netbeans.modules'
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    80
     '.xml.wsdl.bindingsupport.spi.ExtensibilityElementTemplateProvider.i')
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    81
show('data/AUX.THE-QUICK-BROWN-FOX-JU:MPS-OVER-THE-LAZY-DOG-THE-QUICK-'
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    82
     'BROWN-FOX-JUMPS-OVER-THE-LAZY-DOG.TXT.i')
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    83
show('data/Project Planning/Resources/AnotherLongDirectoryName/'
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    84
     'Followedbyanother/AndAnother/AndThenAnExtremelyLongFileName.txt')
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    85
show('data/Project.Planning/Resources/AnotherLongDirectoryName/'
1a6d702e059d test-hybridencode: break long string literals
Martin Geisler <mg@lazybytes.net>
parents: 7515
diff changeset
    86
     'Followedbyanother/AndAnother/AndThenAnExtremelyLongFileName.txt')
12687
34d8247a4595 store: encode first period or space in filenames (issue1713)
Adrian Buehlmann <adrian@cadifra.com>
parents: 8659
diff changeset
    87
show('data/foo.../foo   / /a./_. /__/.x../    bla/.FOO/something.i')
17432
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    88
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    89
show('data/c/co/com/com0/com1/com2/com3/com4/com5/com6/com7/com8/com9')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    90
show('data/C/CO/COM/COM0/COM1/COM2/COM3/COM4/COM5/COM6/COM7/COM8/COM9')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    91
show('data/c.x/co.x/com.x/com0.x/com1.x/com2.x/com3.x/com4.x/com5.x'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    92
                                        '/com6.x/com7.x/com8.x/com9.x')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    93
show('data/x.c/x.co/x.com0/x.com1/x.com2/x.com3/x.com4/x.com5'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    94
                                        '/x.com6/x.com7/x.com8/x.com9')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    95
show('data/cx/cox/comx/com0x/com1x/com2x/com3x/com4x/com5x'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    96
                                            '/com6x/com7x/com8x/com9x')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    97
show('data/xc/xco/xcom0/xcom1/xcom2/xcom3/xcom4/xcom5'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    98
                                            '/xcom6/xcom7/xcom8/xcom9')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
    99
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   100
show('data/l/lp/lpt/lpt0/lpt1/lpt2/lpt3/lpt4/lpt5/lpt6/lpt7/lpt8/lpt9')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   101
show('data/L/LP/LPT/LPT0/LPT1/LPT2/LPT3/LPT4/LPT5/LPT6/LPT7/LPT8/LPT9')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   102
show('data/l.x/lp.x/lpt.x/lpt0.x/lpt1.x/lpt2.x/lpt3.x/lpt4.x/lpt5.x'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   103
                                        '/lpt6.x/lpt7.x/lpt8.x/lpt9.x')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   104
show('data/x.l/x.lp/x.lpt/x.lpt0/x.lpt1/x.lpt2/x.lpt3/x.lpt4/x.lpt5'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   105
                                        '/x.lpt6/x.lpt7/x.lpt8/x.lpt9')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   106
show('data/lx/lpx/lptx/lpt0x/lpt1x/lpt2x/lpt3x/lpt4x/lpt5x'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   107
                                            '/lpt6x/lpt7x/lpt8x/lpt9x')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   108
show('data/xl/xlp/xlpt/xlpt0/xlpt1/xlpt2/xlpt3/xlpt4/xlpt5'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   109
                                            '/xlpt6/xlpt7/xlpt8/xlpt9')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   110
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   111
show('data/con/p/pr/prn/a/au/aux/n/nu/nul')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   112
show('data/CON/P/PR/PRN/A/AU/AUX/N/NU/NUL')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   113
show('data/con.x/p.x/pr.x/prn.x/a.x/au.x/aux.x/n.x/nu.x/nul.x')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   114
show('data/x.con/x.p/x.pr/x.prn/x.a/x.au/x.aux/x.n/x.nu/x.nul')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   115
show('data/conx/px/prx/prnx/ax/aux/auxx/nx/nux/nulx')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   116
show('data/xcon/xp/xpr/xprn/xa/xau/xaux/xn/xnu/xnul')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   117
17540
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   118
show('data/a./au./aux./auxy./aux.')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   119
show('data/c./co./con./cony./con.')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   120
show('data/p./pr./prn./prny./prn.')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   121
show('data/n./nu./nul./nuly./nul.')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   122
show('data/l./lp./lpt./lpt1./lpt1y./lpt1.')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   123
show('data/lpt9./lpt9y./lpt9.')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   124
show('data/com./com1./com1y./com1.')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   125
show('data/com9./com9y./com9.')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   126
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   127
show('data/a /au /aux /auxy /aux ')
f2bcc5975f10 test-hybridencode: a few more cases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17459
diff changeset
   128
17432
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   129
print "largest unhashed path"
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   130
show('data/123456789-123456789-123456789-123456789-123456789-'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   131
          'unhashed--xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   132
          '123456789-12345')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   133
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   134
print "shortest hashed path"
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   135
show('data/123456789-123456789-123456789-123456789-123456789-'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   136
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   137
          '123456789-123456')
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   138
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   139
print "changing one char in part that's hashed away produces a different hash"
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   140
show('data/123456789-123456789-123456789-123456789-123456789-'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   141
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxy-'
61bd77b57c86 test-hybridencode: more testcases
Adrian Buehlmann <adrian@cadifra.com>
parents: 17404
diff changeset
   142
          '123456789-123456')
17440
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   143
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   144
print "uppercase hitting length limit due to encoding"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   145
show('data/A23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   146
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   147
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   148
show('data/Z23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   149
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   150
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   151
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   152
print "compare with lowercase not hitting limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   153
show('data/a23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   154
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   155
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   156
show('data/z23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   157
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   158
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   159
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   160
print "not hitting limit with any of these"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   161
show("data/abcdefghijklmnopqrstuvwxyz0123456789 !#%&'()+,-.;="
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   162
          "[]^`{}xxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   163
          "123456789-12345")
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   164
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   165
print "underbar hitting length limit due to encoding"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   166
show('data/_23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   167
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   168
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   169
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   170
print "tilde hitting length limit due to encoding"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   171
show('data/~23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   172
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   173
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   174
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   175
print "Windows reserved characters hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   176
show('data/<23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   177
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   178
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   179
show('data/>23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   180
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   181
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   182
show('data/:23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   183
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   184
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   185
show('data/"23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   186
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   187
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   188
show('data/\\23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   189
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   190
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   191
show('data/|23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   192
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   193
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   194
show('data/?23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   195
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   196
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   197
show('data/*23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   198
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   199
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   200
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   201
print "initial space hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   202
show('data/ 23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   203
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   204
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   205
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   206
print "initial dot hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   207
show('data/.23456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   208
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   209
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   210
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   211
print "trailing space in filename hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   212
show('data/123456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   213
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   214
          '123456789-1234 ')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   215
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   216
print "trailing dot in filename hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   217
show('data/123456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   218
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   219
          '123456789-1234.')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   220
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   221
print "initial space in directory hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   222
show('data/ x/456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   223
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   224
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   225
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   226
print "initial dot in directory hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   227
show('data/.x/456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   228
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   229
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   230
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   231
print "trailing space in directory hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   232
show('data/x /456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   233
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   234
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   235
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   236
print "trailing dot in directory hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   237
show('data/x./456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   238
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   239
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   240
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   241
print "with directories that need direncoding, hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   242
show('data/x.i/56789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   243
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   244
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   245
show('data/x.d/56789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   246
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   247
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   248
show('data/x.hg/5789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   249
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   250
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   251
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   252
print "Windows reserved filenames, hitting length limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   253
show('data/con/56789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   254
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   255
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   256
show('data/prn/56789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   257
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   258
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   259
show('data/aux/56789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   260
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   261
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   262
show('data/nul/56789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   263
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   264
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   265
show('data/com1/6789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   266
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   267
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   268
show('data/com9/6789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   269
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   270
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   271
show('data/lpt1/6789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   272
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   273
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   274
show('data/lpt9/6789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   275
          'xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   276
          '123456789-12345')
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   277
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   278
print "non-reserved names, just not hitting limit"
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   279
show('data/123456789-123456789-123456789-123456789-123456789-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   280
          '/com/com0/lpt/lpt0/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
5be041254a2e test-hybridencode: add more testcases for hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17432
diff changeset
   281
          '123456789-12345')
17452
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   282
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   283
print "hashed path with largest untruncated 1st dir"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   284
show('data/12345678/-123456789-123456789-123456789-123456789-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   285
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   286
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   287
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   288
print "hashed path with smallest truncated 1st dir"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   289
show('data/123456789/123456789-123456789-123456789-123456789-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   290
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   291
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   292
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   293
print "hashed path with largest untruncated two dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   294
show('data/12345678/12345678/9-123456789-123456789-123456789-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   295
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   296
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   297
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   298
print "hashed path with smallest truncated two dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   299
show('data/123456789/123456789/123456789-123456789-123456789-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   300
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   301
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   302
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   303
print "hashed path with largest untruncated three dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   304
show('data/12345678/12345678/12345678/89-123456789-123456789-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   305
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   306
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   307
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   308
print "hashed path with smallest truncated three dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   309
show('data/123456789/123456789/123456789/123456789-123456789-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   310
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   311
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   312
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   313
print "hashed path with largest untruncated four dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   314
show('data/12345678/12345678/12345678/12345678/789-123456789-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   315
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   316
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   317
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   318
print "hashed path with smallest truncated four dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   319
show('data/123456789/123456789/123456789/123456789/123456789-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   320
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   321
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   322
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   323
print "hashed path with largest untruncated five dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   324
show('data/12345678/12345678/12345678/12345678/12345678/6789-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   325
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   326
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   327
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   328
print "hashed path with smallest truncated five dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   329
show('data/123456789/123456789/123456789/123456789/123456789/'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   330
          'hashed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   331
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   332
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   333
print "hashed path with largest untruncated six dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   334
show('data/12345678/12345678/12345678/12345678/12345678/12345'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   335
          '678/ed----xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   336
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   337
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   338
print "hashed path with smallest truncated six dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   339
show('data/123456789/123456789/123456789/123456789/123456789/'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   340
          '123456789/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   341
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   342
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   343
print "hashed path with largest untruncated seven dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   344
show('data/12345678/12345678/12345678/12345678/12345678/12345'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   345
          '678/12345678/xxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   346
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   347
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   348
print "hashed path with smallest truncated seven dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   349
show('data/123456789/123456789/123456789/123456789/123456789/'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   350
          '123456789/123456789/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   351
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   352
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   353
print "hashed path with largest untruncated eight dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   354
print "(directory 8 is dropped because it hits _maxshortdirslen)"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   355
show('data/12345678/12345678/12345678/12345678/12345678/12345'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   356
          '678/12345678/12345678/xxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   357
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   358
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   359
print "hashed path with smallest truncated eight dirs"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   360
print "(directory 8 is dropped because it hits _maxshortdirslen)"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   361
show('data/123456789/123456789/123456789/123456789/123456789/'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   362
          '123456789/123456789/123456789/xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   363
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   364
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   365
print "hashed path with largest non-dropped directory 8"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   366
print "(just not hitting the _maxshortdirslen boundary)"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   367
show('data/12345678/12345678/12345678/12345678/12345678/12345'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   368
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   369
          '123456789-123456')
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   370
17453
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   371
print "...adding one truncated char to dir 1..7 won't drop dir 8"
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   372
show('data/12345678x/12345678/12345678/12345678/12345678/12345'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   373
          '678/12345678/12345/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   374
          '123456789-123456')
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   375
show('data/12345678/12345678x/12345678/12345678/12345678/12345'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   376
          '678/12345678/12345/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   377
          '123456789-123456')
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   378
show('data/12345678/12345678/12345678x/12345678/12345678/12345'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   379
          '678/12345678/12345/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   380
          '123456789-123456')
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   381
show('data/12345678/12345678/12345678/12345678x/12345678/12345'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   382
          '678/12345678/12345/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   383
          '123456789-123456')
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   384
show('data/12345678/12345678/12345678/12345678/12345678x/12345'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   385
          '678/12345678/12345/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   386
          '123456789-123456')
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   387
show('data/12345678/12345678/12345678/12345678/12345678/12345'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   388
          '678x/12345678/12345/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   389
          '123456789-123456')
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   390
show('data/12345678/12345678/12345678/12345678/12345678/12345'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   391
          '678/12345678x/12345/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   392
          '123456789-123456')
97899a01d3e5 test-hybridencode: adding one truncated char to dir 1..7 won't drop dir 8
Adrian Buehlmann <adrian@cadifra.com>
parents: 17452
diff changeset
   393
17452
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   394
print "hashed path with shortest dropped directory 8"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   395
print "(just hitting the _maxshortdirslen boundary)"
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   396
show('data/12345678/12345678/12345678/12345678/12345678/12345'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   397
          '678/12345678/123456/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
4aec89d4faa2 test-hybridencode: testing dir levels and dir prefix lenghts of hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17445
diff changeset
   398
          '123456789-123456')
17457
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   399
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   400
print "hashed path that drops dir 8 due to dot or space at end is"
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   401
print "encoded, and thus causing to hit _maxshortdirslen"
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   402
show('data/12345678/12345678/12345678/12345678/12345678/12345'
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   403
          '678/12345678/1234./-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   404
          '123456789-123456')
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   405
show('data/12345678/12345678/12345678/12345678/12345678/12345'
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   406
          '678/12345678/1234 /-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   407
          '123456789-123456')
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   408
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   409
print "... with dir 8 short enough for encoding"
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   410
show('data/12345678/12345678/12345678/12345678/12345678/12345'
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   411
          '678/12345678/12./xx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   412
          '123456789-123456')
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   413
show('data/12345678/12345678/12345678/12345678/12345678/12345'
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   414
          '678/12345678/12 /xx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
467e487f393f test-hybridencode: dropping dir eight in hashed path due to dot or space at end
Adrian Buehlmann <adrian@cadifra.com>
parents: 17453
diff changeset
   415
          '123456789-123456')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   416
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   417
print '''Extensions are replicated on hashed paths. Note that
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   418
we only get to encode files that end in .i or .d inside the
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   419
store. Encoded filenames are thus bound in length.'''
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   420
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   421
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   422
          '123456789-12.345.i')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   423
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   424
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   425
          '123456789-12.345.d')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   426
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   427
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   428
          '123456789-12.3456.i')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   429
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   430
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   431
          '123456789-12.34567.i')
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   432
show('data/12345678/12345678/12345678/12345678/12345678/12345'
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   433
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   434
          '123456789-12.345678.i')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   435
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   436
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   437
          '123456789-12.3456789.i')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   438
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   439
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   440
          '123456789-12.3456789-.i')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   441
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   442
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   443
          '123456789-12.3456789-1.i')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   444
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   445
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   446
          '123456789-12.3456789-12.i')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   447
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   448
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   449
          '123456789-12.3456789-123.i')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   450
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   451
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   452
          '123456789-12.3456789-1234.i')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   453
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   454
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   455
          '123456789-12.3456789-12345.i')
17459
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   456
show('data/12345678/12345678/12345678/12345678/12345678/12345'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   457
          '678/12345678/12345/-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   458
          '123456789-12.3456789-12345-ABCDEFGHIJKLMNOPRSTUVWX'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   459
          'YZ-abcdefghjiklmnopqrstuvwxyz-ABCDEFGHIJKLMNOPRSTU'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   460
          'VWXYZ-1234567890-xxxxxxxxx-xxxxxxxxx-xxxxxxxx-xxxx'
f4d15f3b96c0 test-hybridencode: extensions are replicated on hashed paths
Adrian Buehlmann <adrian@cadifra.com>
parents: 17457
diff changeset
   461
          'xxxxx-wwwwwwwww-wwwwwwwww-wwwwwwwww-wwwwwwwww-wwww'
17690
eb7f8359249a test-hybridencode: in practice, extensions aren't really unbound in length
Adrian Buehlmann <adrian@cadifra.com>
parents: 17622
diff changeset
   462
          'wwwww-wwwwwwwww-wwwwwwwww-wwwwwwwww-wwwwwwwww.i')
25027
297ea0df75d0 pathencode: for long paths, strip first 5 chars, not first dir
Martin von Zweigbergk <martinvonz@google.com>
parents: 18435
diff changeset
   463
297ea0df75d0 pathencode: for long paths, strip first 5 chars, not first dir
Martin von Zweigbergk <martinvonz@google.com>
parents: 18435
diff changeset
   464
print "paths outside data/ can be encoded"
297ea0df75d0 pathencode: for long paths, strip first 5 chars, not first dir
Martin von Zweigbergk <martinvonz@google.com>
parents: 18435
diff changeset
   465
show('metadata/dir/00manifest.i')
297ea0df75d0 pathencode: for long paths, strip first 5 chars, not first dir
Martin von Zweigbergk <martinvonz@google.com>
parents: 18435
diff changeset
   466
show('metadata/12345678/12345678/12345678/12345678/12345678/'
297ea0df75d0 pathencode: for long paths, strip first 5 chars, not first dir
Martin von Zweigbergk <martinvonz@google.com>
parents: 18435
diff changeset
   467
          '12345678/12345678/12345678/12345678/12345678/12345678/'
297ea0df75d0 pathencode: for long paths, strip first 5 chars, not first dir
Martin von Zweigbergk <martinvonz@google.com>
parents: 18435
diff changeset
   468
          '12345678/12345678/00manifest.i')