Skip to content
Snippets Groups Projects
  • Martin von Zweigbergk's avatar
    c6146dd10072
    tests: fix test-flagprocessor.t flakiness · c6146dd10072
    Martin von Zweigbergk authored
    The test for duplicate flag processors depended on the timestamps
    being set in the dirstate to work. If the time between the the
    previous failed commit (which would set the timestamp, due to bug
    5645) and the attempted commit with the duplicate flag processors was
    small enough, it would fail. The failure was caused by a call to
    commands.status() early in the commit process. If the dirstate did not
    have the timestamp set, it would need to fetch the file content to
    compare with. Since two flag processors had been registered, it would
    attempted to base64 decode the contents twice, which would of course
    fail.
    
    This patch adds a "hg debugrebuilddirstate" to make it deterministic
    and also replaces the test case's "hg commit" by simply "hg status",
    since that will trigger reading of the contents and thereby use of the
    flag processors as noted above.
    
    Differential Revision: https://phab.mercurial-scm.org/D202
    c6146dd10072
    History
    tests: fix test-flagprocessor.t flakiness
    Martin von Zweigbergk authored
    The test for duplicate flag processors depended on the timestamps
    being set in the dirstate to work. If the time between the the
    previous failed commit (which would set the timestamp, due to bug
    5645) and the attempted commit with the duplicate flag processors was
    small enough, it would fail. The failure was caused by a call to
    commands.status() early in the commit process. If the dirstate did not
    have the timestamp set, it would need to fetch the file content to
    compare with. Since two flag processors had been registered, it would
    attempted to base64 decode the contents twice, which would of course
    fail.
    
    This patch adds a "hg debugrebuilddirstate" to make it deterministic
    and also replaces the test case's "hg commit" by simply "hg status",
    since that will trigger reading of the contents and thereby use of the
    flag processors as noted above.
    
    Differential Revision: https://phab.mercurial-scm.org/D202