This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
In vmsify, leave ../ path components alone.
[perl5.git] / vms / ext / filespec.t
index b40cc81..c5bf12b 100755 (executable)
@@ -79,6 +79,15 @@ ok(rmdir('testdir/'),           '    rmdir()');
 
 __DATA__
 
+# Column definitions:
+#
+#  Column 1: Argument (path spec to be transformed)
+#  Column 2: Function that is to do the transformation
+#  Column 3: Expected result when DECC$EFS_CHARSET is not in effect
+#  Column 4: Expected result when DECC$EFS_CHARSET is in effect
+#            ^ means expect same result for EFS as for non-EFS
+#            ^* means TODO when EFS is in effect
+
 # lots of underscores used to minimize collision with existing logical names
 
 # Basic VMS to Unix filespecs
@@ -87,22 +96,23 @@ __some_:<__where_.__over_>__the_.__rainbow_    unixify /__some_/__where_/__over_
 [.__some_.__where_.__over_]__the_.__rainbow_   unixify __some_/__where_/__over_/__the_.__rainbow_ ^
 [-.__some_.__where_.__over_]__the_.__rainbow_  unixify ../__some_/__where_/__over_/__the_.__rainbow_ ^
 [.__some_.--.__where_.__over_]__the_.__rainbow_        unixify __some_/../../__where_/__over_/__the_.__rainbow_ ^
-[.__some_...__where_.__over_]__the_.__rainbow_ unixify __some_/.../__where_/__over_/__the_.__rainbow_ ^*
-[...__some_.__where_.__over_]__the_.__rainbow_ unixify .../__some_/__where_/__over_/__the_.__rainbow_ ^*
-[.__some_.__where_.__over_...]__the_.__rainbow_        unixify __some_/__where_/__over_/.../__the_.__rainbow_ ^*
-[.__some_.__where_.__over_...] unixify __some_/__where_/__over_/.../ ^*
+[.__some_...__where_.__over_]__the_.__rainbow_ unixify __some_/.../__where_/__over_/__the_.__rainbow_ ^
+[...__some_.__where_.__over_]__the_.__rainbow_ unixify .../__some_/__where_/__over_/__the_.__rainbow_ ^
+[.__some_.__where_.__over_...]__the_.__rainbow_        unixify __some_/__where_/__over_/.../__the_.__rainbow_ ^
+[.__some_.__where_.__over_...] unixify __some_/__where_/__over_/.../ ^
 [.__some_.__where_.__over_.-]  unixify __some_/__where_/__over_/../ ^
 []     unixify         ./      ^
 [-]    unixify         ../     ^
 [--]   unixify         ../../  ^
-[...]  unixify         .../    ^*
+[...]  unixify         .../    ^
+__lyrics_:[__are_.__very_^.__sappy_]__but_^.__rhymes_^.__are_.__true_    unixify   /__lyrics_/__are_/__very_.__sappy_/__but_.__rhymes_.__are_.__true_ ^
 [.$(macro)]    unixify $(macro)/ ^
 
 # and back again
 /__some_/__where_/__over_/__the_.__rainbow_    vmsify  __some_:[__where_.__over_]__the_.__rainbow_ ^
 __some_/__where_/__over_/__the_.__rainbow_     vmsify  [.__some_.__where_.__over_]__the_.__rainbow_ ^
 ../__some_/__where_/__over_/__the_.__rainbow_  vmsify  [-.__some_.__where_.__over_]__the_.__rainbow_ ^
-__some_/../../__where_/__over_/__the_.__rainbow_       vmsify  [-.__where_.__over_]__the_.__rainbow_  [.__some_.--.__where_.__over_]__the_.__rainbow_
+__some_/../../__where_/__over_/__the_.__rainbow_       vmsify  [.__some_.--.__where_.__over_]__the_.__rainbow_ ^
 .../__some_/__where_/__over_/__the_.__rainbow_ vmsify  [...__some_.__where_.__over_]__the_.__rainbow_ [.^.^.^..__some_.__where_.__over_]__the_.__rainbow_
 __some_/.../__where_/__over_/__the_.__rainbow_ vmsify  [.__some_...__where_.__over_]__the_.__rainbow_  [.__some_.^.^.^..__where_.__over_]__the_.__rainbow_
 /__some_/.../__where_/__over_/__the_.__rainbow_        vmsify  __some_:[...__where_.__over_]__the_.__rainbow_ __some_:[^.^.^..__where_.__over_]__the_.__rainbow_
@@ -112,7 +122,6 @@ __some_/__where_/...   vmsify  [.__some_.__where_...] [.__some_.__where_]^.^.^..
 ..     vmsify  [-]     ^
 ../..  vmsify  [--]    ^
 .../   vmsify  [...]   [.^.^.^.]
-# Can not predict what / will translate to.
 /      vmsify  sys$disk:[000000] ^*
 ./$(macro)/    vmsify  [.$(macro)] ^
 ./$(macro)     vmsify  []$(macro) ^
@@ -160,7 +169,7 @@ __path_        vmspath [.__path_] ^
 /sys$scratch   vmspath sys$scratch: ^
 
 # Redundant characters in Unix paths
-//__some_/__where_//__over_/../__the_.__rainbow_       vmsify  __some_:[__where_]__the_.__rainbow_ __some_:[__where_.__over_.-]__the_.__rainbow_
+//__some_/__where_//__over_/../__the_.__rainbow_       vmsify  __some_:[__where_.__over_.-]__the_.__rainbow_ ^
 /__some_/__where_//__over_/./__the_.__rainbow_ vmsify  __some_:[__where_.__over_]__the_.__rainbow_ ^
 ..//../        vmspath [--] ^
 ./././ vmspath [] ^