On Sun, May 3, 2020 at 6:23 PM Yasuhito FUTATSUKI <futat...@poem.co.jp> wrote: > > On 2020/05/03 10:02, Johan Corveleyn wrote: > > On Fri, May 1, 2020 at 7:46 PM Yasuhito FUTATSUKI <futat...@poem.co.jp> > > wrote: > >> > >> On 2020/04/23 2:05, Yasuhito FUTATSUKI wrote: > >>> On 2020/04/22 23:04, Johan Corveleyn wrote: > >>>> On Wed, Apr 22, 2020 at 3:50 PM Yasuhito FUTATSUKI <futat...@poem.co.jp> > >>>> wrote: > >>> > >>>>> ... and what is worse, at least > >>>>> > >>>>>> FAIL: merge_tests.py 34: conflict markers should match the file's eol > >>>>>> style > >>>>> > >>>>> this one seems to be broken even with Python 2.7, on Windows. > >>>>> (I'll post about it later). > >>>> > >>>> That's strange. It does succeed on my system when running with Python > >>>> 2.7.17. I had "All successful" test runs for [fsfs] x [ra_local, > >>>> ra_serf, ra_svn]. > >>> > >>> Yes, I don't doubt this test is passed on Windows with Python 2.7, > >>> but I doubt this test does not check just what we want to check. > >>> > >>> As far as I read the description of the test and about KEEP_EOL_STYLE > >>> option introduced in r1743445. > >>> > >>> merge_tests.py (merge_conflict_markers_matching_eol): > >>> [[[ > >>> # eol-style handling during merge with conflicts, scenario 1: > >>> # when a merge creates a conflict on a file, make sure the file and files > >>> # r<left>, r<right> and .mine are in the eol-style defined for that file. > >>> ]]] > >>> > >>> So I think comparion of expected and actual should be done without > >>> eol-style translation. However it try to check with translation on > >>> Windows environment. > >> > >> It seems following tests are EOL style sensitive, but they didn't > >> check without strict EOL style on Windows: > >> > >> merge_tests.merge_conflict_markers_matching_eol > >> merge_tests.merge_eolstyle_handling > >> patch_tests.patch_no_svn_eol_style > >> patch_tests.patch_with_svn_eol_style > >> patch_tests.patch_with_svn_eol_style_uncommitted > >> update_tests.conflict_markers_matching_eol > >> update_tests.update_eol_style_handling > >> > >> I've not check that each tests depend that native EOL is '\n' or not. > >> However, I think if some tests depend on it, other test cases for > >> those aims are needed on Windows, or at least explicitly skip the tests > >> on Windows to clarify that those tests check nothing for the aims. > >> > >> The updated patch attached only make these tests EOL style sensitive > >> (and relax check of EOL on Python 2 if keep_eol_style optional > >> parameter is not specified). > > > > Thank you for continuing to work on this, Yasuhito. > > > > This patch indeed fixes the above 7 tests when running with Python 3 on > > Windows. > > However, when running with Python 2 there are now 6 tests that fail > > (without this patch, all tests are successful with Py2): > > Thank you for testing. > > As far as this test result, those test cases don't depend on specific > native EOL. > > > FAIL: merge_tests.py 34: conflict markers should match the file's eol style > > FAIL: patch_tests.py 13: patch target with no svn:eol-style > > FAIL: patch_tests.py 14: patch target with svn:eol-style > > FAIL: patch_tests.py 15: patch target with uncommitted svn:eol-style > > FAIL: patch_tests.py 57: patch a binary file > > FAIL: update_tests.py 26: conflict markers should match the file's eol > > style > > > > See fails.log in attachment. > > I overlooked that result of io.TextIO.read() is unicode on Python 2. > I hope updated patch may resolve this issue.
Okay, that latest version fixes this test for Python 2: patch_tests.py 57: patch a binary file But the five other failures still remain for Py2: FAIL: merge_tests.py 34: conflict markers should match the file's eol style FAIL: patch_tests.py 13: patch target with no svn:eol-style FAIL: patch_tests.py 14: patch target with svn:eol-style FAIL: patch_tests.py 15: patch target with uncommitted svn:eol-style FAIL: update_tests.py 26: conflict markers should match the file's eol style See fails_py2.log in attachment. For Python 3 we're getting close. After this patch and the one for svnrdump_tests, we only have 2 failures left with Python 3: FAIL: svnadmin_tests.py 35: detect denormalized names and name collisions FAIL: svndumpfilter_tests.py 7: svndumpfilter with an empty prefix See fails_py3.log in attachment. -- Johan
fails_py2.log
Description: Binary data
fails_py3.log
Description: Binary data