Will Coleda wrote:
I expect the first two to pass, but metadata is often often overlooked
on commits.
The last one is a new test, not everything has been updated yet. (And
I'm not sure it *can* be without breaking windows).
Should be passing the second test again as of r17398.
Thanks for your help. I have attached the patch to make the test work
on Windows. The problem is that Subversion reports file names with
backslashes, but the code expects forward slashes. For example:
>svn propget svn:eol-style t/distro/*
t\distro\file_metadata.t - native
t\distro\manifest.t - native
t\distro\manifest_skip.t - native
t\distro\test_file_coverage.t - native
Attached patch replaces the backslashes with slashes on Windows.
Here's what I get for r17405.
>prove t\distro\file_metadata.t
t\distro\file_metadata....# Collecting svn:mime-type attributes...
# Collecting svn:keywords attributes...
t\distro\file_metadata....ok 1/3# Collecting svn:eol-style attributes...
t\distro\file_metadata....ok
All tests successful.
Files=1, Tests=3, 12 wallclock secs ( 0.00 cusr + 0.00 csys = 0.00 CPU)
Ron
Index: t/distro/file_metadata.t
===================================================================
--- t/distro/file_metadata.t (revision 17405)
+++ t/distro/file_metadata.t (working copy)
@@ -172,9 +172,6 @@
=cut
BEGIN {
- plan skip_all => 'RT #41569 - this test is broken on win32'
- if $^O eq 'MSWin32';
-
unless ( $Parrot::Revision::current or `svk ls .` ) {
plan skip_all => 'not a working copy';
}
@@ -231,7 +228,12 @@
# This RE may be a little wonky.
if ( $result =~ m{(.*) - (.*)} ) {
- $results{$1} = $2;
+ my ($file, $attribute) = ($1, $2);
+ # file names are reported with backslashes on Windows,
+ # but we want forward slashes
+ $file =~ s!\\!/!g if $^O eq 'MSWin32';
+
+ $results{$file} = $attribute;
}
}