[jira] [Commented] (SVN-4891) Pristines-on-demand: fix disabled tests
"Daniel Shahaf (Jira)" <[email protected]> Tue, 8 Mar 2022 16:01:00 +0000 (UTC)
| Newsgroups | gmane.comp.version-control.subversion.issues |
|---|---|
| Message-ID | <[email protected]> |
[ https://issues.apache.org/jira/browse/SVN-4891?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17503028#comment-17503028 ]
Daniel Shahaf commented on SVN-4891:
------------------------------------
> basic_tests.py 9 basic_update_corruption()
>
> should be the same... but something has changed, and the 'update' under test fails to fail. The update unexpectedly succeeds, so the test fails (when testing against 1.14 format).
In subversion/libsvn_wc/textbase.c:open_textbase() we do this:
{code:java}
272 if (checksum && svn_checksum_match(checksum, target_checksum)) 273 {
274 svn_boolean_t modified; 275
276 SVN_ERR(check_file_modified(&modified, db, local_abspath, recorded_size,
277 recorded_time, target_checksum, have_props,
278 props_mod, scratch_pool));
279 if (!modified)
280 { 281 SVN_ERR(svn_wc__internal_translated_stream(contents_p, db, 282 local_abspath,
283 local_abspath, 284 SVN_WC_TRANSLATE_TO_NF, 285 result_pool,
286 scratch_pool)); 287 288 return SVN_NO_ERROR;
289 } 290 }
291
292 SVN_ERR(svn_wc__db_pristine_read(contents_p, NULL, db, local_abspath,
293 target_checksum, result_pool, scratch_pool));
{code}
The local file is unmodified, so we return a stream to the ACTUAL file [I'm not shouting; this is a term of art] and never notice the old text-base. The update actually works just fine even if the "old" text-base is deleted entirely.
I had tried to bisect this too, however, as of the creation of the "-on-mwf" rebase branch the test failed with an error about the {{TEXTBASE_REFS}} table not existing (sorry, I didn't keep the error message). That seemed unrelated so I did not attempt to bisect further.
> Pristines-on-demand: fix disabled tests
> ---------------------------------------
>
> Key: SVN-4891
> URL: https://issues.apache.org/jira/browse/SVN-4891
> Project: Subversion
> Issue Type: Bug
> Reporter: Julian Foad
> Assignee: Julian Foad
> Priority: Major
>
> The following tests had been changed in the pristines-on-demand development.
> Most were disabled with the '@Wimp' decorator. (This caused some of them to give an XPASS and some an XFAIL result when run against the older WC format, and all XFAIL against the newer WC format.)
> They need to be re-enabled and fixed.
> (I am removing them from this list as and when fixed.)
> {code:java}
> basic_tests.py 8 basic_commit_corruption(): basic corruption detection on commit
> [[Relies on wc.text_base_path()]]
> basic_tests.py 9 basic_update_corruption(): basic corruption detection on update
> [[Relies on wc.text_base_path()]]
> externals_tests.py ... ... ...:
> update_modify_file_external(),
> remap_file_external_with_prop_del(),
> file_external_recorded_info():
> existing issue (Windows only)
> revert_tests.py 2 revert_reexpand_keyword(): revert reexpands manually contracted keyword
> "See r1101730 and r1101817"
> trans_tests.py 1 keywords_from_birth(): commit new files with keywords active from birth
> [[Relies on wc.text_base_path()]]
> trans_tests.py 3 eol_change_is_text_mod(): committing eol-style change forces text send
> [[Relies on wc.text_base_path()]]
> update_tests.py 57 skip_access_denied(): access denied paths should be skipped
> [[Need to update the access denied handling in update_editor.c]]
> upgrade_tests.py 16 replaced_files(): upgrade with base and working replaced files
> [[Can't fetch pristines: the working copy points to file:///tmp/repo]]
> {code}
>
--
This message was sent by Atlassian Jira
(v8.20.1#820001)