git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v3 4/6] fsmonitor: add test cases for fsmonitor extension

From
Ben Peart <peartben@gmail.com>
Date
May 31, 2017, 14:57 UTC
Message-ID
<47d76489-3e2f-ca25-8ff3-4350ca47aa76@gmail.com>
In-Reply-To
<CAP8UFD3jkAOOpFqJg2LurBfXRzeOLNO6+Wso3OPt_40TUVZy9g@mail.gmail.com>
On 5/31/2017 12:33 AM, Christian Couder wrote:
Show 34 quoted lines
>>>> +test_expect_success 'refresh_index() invalidates fsmonitor cache' '
>>>> +       git config core.fsmonitor true &&
>>>> +       git config core.untrackedcache true &&
>>>> +       clean_repo &&
>>>> +       git status &&
>>>> +       test_path_is_missing marker &&
>>>> +       dirty_repo &&
>>>> +       write_script .git/hooks/query-fsmonitor<<-\EOF &&
>>>> +       :>marker
>>>> +       EOF
>>>> +       git add . &&
>>>> +       git commit -m "to reset" &&
>>>> +       git status &&
>>>> +       test_path_is_file marker &&
> 
> Ok so "marker" is there now.
> 
>>>> +       git reset HEAD~1 &&
>>>> +       git status >output &&
>>>> +       test_path_is_file marker &&
>>>
>>> You already checked that "marker" exists 3 lines above, and as far as
>>> I can see nothing could remove this file since the previous test, as
>>> the hook can only create it.
>>> So I wonder if something is missing or if this test is redundant.
>>
>> Testing it each time ensures it is being created when it is supposed to be
>> (ie when the test believes it is using the query-fsmonitor hook) and that it
>> isn't when it isn't supposed to be (ie when the hook should not be called).
> 
> I would agree with that if the "marker" file was removed after the
> previous "test_path_is_file marker", but I don't see any "clean_repo"
> or "rm marker" call that removes it.
> 

Got it. I've added a call to "rm -f marker" to ensure the marker isn't left over from the previous status command. I found another instance of where this could happen in "status doesn't detect unreported modifications" and fixed it as well. Thanks!

Previous: Christian Couder
Message 14 of 14 in “Fast git status via a file system watcher”
  1. 0/6 Fast git status via a file system watcherBen Peart, May 25, 2017
  2. 1/6 bswap: add 64 bit endianness helper get_be64Ben Peart, May 25, 2017
  3. 6/6 fsmonitor: add a sample query-fsmonitor hook script for WatchmanBen Peart, May 25, 2017
  4. Christian CouderMay 31, 2017
  5. 3/6 fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files.Ben Peart, May 25, 2017
  6. 5/6 fsmonitor: add documentation for the fsmonitor extension.Ben Peart, May 25, 2017
  7. 2/6 dir: make lookup_untracked() available outside of dir.cBen Peart, May 25, 2017
  8. 4/6 fsmonitor: add test cases for fsmonitor extensionBen Peart, May 25, 2017
  9. Christian CouderMay 30, 2017
  10. Ben PeartMay 30, 2017
  11. Junio C HamanoMay 30, 2017
  12. Ben PeartMay 31, 2017
  13. Christian CouderMay 31, 2017
  14. Ben PeartMay 31, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.