Changeset 60


Ignore:
Timestamp:
07/07/09 11:56:26 (3 years ago)
Author:
dom
Message:

Refactored directory_watcher_tests to use a fun instead of a pid

Location:
trunk/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/directory_watcher.erl

    r59 r60  
    2929    end. 
    3030 
    31 init (Directory, Pid) when is_pid (Pid) -> 
    32     init (Directory, send (Pid)); 
    3331init (Directory, F) -> 
    3432    check (Directory, F, []). 
    3533 
    36 init_recursive (Directory, Pid) when is_pid (Pid) -> 
    37     init_recursive (Directory, send (Pid)); 
    3834init_recursive (Directory, F) -> 
    39     S = self (), 
    40     Watcher = spawn_link (?MODULE, init, [Directory, S]), 
     35    Self = self (), 
     36    Watcher = spawn_link (?MODULE, init, [Directory, send (Self)]), 
    4137    loop_recursive (Directory, F, [Watcher]). 
    4238 
  • trunk/src/directory_watcher_test.erl

    r58 r60  
    2222tests_from_non_existent () -> 
    2323    Dir = fixtures: temporary_pathname (), 
    24     Watcher = spawn_link (directory_watcher, init, [Dir, self ()]), 
     24    Watcher = spawn_link (directory_watcher, init, [Dir, send_me ()]), 
    2525    {directory, Dir, {error, enoent}} = receive_one (), 
    2626    Watcher ! check, 
     
    8080 
    8181directories_can_be_removed (Dir, _) ->     
    82     Watcher = spawn_link (directory_watcher, init, [Dir, self ()]), 
     82    Watcher = spawn_link (directory_watcher, init, [Dir, send_me ()]), 
    8383    receive_all (), 
    8484    Subdir = filename: join (Dir, "subdir"), 
     
    8989 
    9090directories_can_be_removed_when_recursive (Dir, _) ->     
    91     Watcher = spawn_link (directory_watcher, init_recursive, [Dir, self ()]), 
     91    Watcher = spawn_link (directory_watcher, init_recursive, [Dir, send_me ()]), 
    9292    receive_all (), 
    9393    Subdir = filename: join ([Dir, "subdir", "subsubdir"]), 
     
    9999 
    100100recursive (Dir, _) -> 
    101     Watcher = spawn_link (directory_watcher, init_recursive, [Dir, self ()]), 
     101    Watcher = spawn_link (directory_watcher, init_recursive, [Dir, send_me ()]), 
    102102    Subdir = filename: join (Dir, "subdir"), 
    103103    Found_subdir = {directory, Subdir, found}, 
     
    115115 
    116116bad_symlinks_are_ignored (Dir, _) -> 
    117     Watcher = spawn_link (directory_watcher, init, [Dir, self ()]), 
     117    Watcher = spawn_link (directory_watcher, init, [Dir, send_me ()]), 
    118118    Link = filename: join (Dir, "titi.erl"), 
    119119    Destination = filename: join (Dir, "nofile"), 
     
    128128     
    129129tests_from_empty (Dir, []) -> 
    130     Watcher = spawn_link (directory_watcher, init, [Dir, self ()]), 
     130    Watcher = spawn_link (directory_watcher, init, [Dir, send_me ()]), 
    131131    timeout = receive_one (), 
    132132     
     
    169169tests_with_several (Dir, Tree) -> 
    170170    [Foo, Bar, Toto] = [filename: join (Dir, Name) || {file, Name, _} <- Tree], 
    171     Watcher = spawn_link (directory_watcher, init, [Dir, self ()]), 
     171    Watcher = spawn_link (directory_watcher, init, [Dir, send_me ()]), 
    172172    Finds = [receive_one(), receive_one(), receive_one()], 
    173173    [FoundBar, FoundFoo, FoundToto] = lists: keysort (2, Finds), 
     
    210210 
    211211change_from_directory_to_file (Root, [{directory, Name, []}]) -> 
    212     Watcher = spawn_link (directory_watcher, init, [Root, self ()]), 
     212    Watcher = spawn_link (directory_watcher, init, [Root, send_me ()]), 
    213213    receive_all (), 
    214214    Path = filename: join (Root, Name), 
     
    220220 
    221221change_from_file_to_directory (Root, [{file, Name, []}]) -> 
    222     Watcher = spawn_link (directory_watcher, init, [Root, self ()]), 
     222    Watcher = spawn_link (directory_watcher, init, [Root, send_me ()]), 
    223223    receive_all (), 
    224224    Path = filename: join (Root, Name), 
     
    230230 
    231231change_from_file_to_directory_when_recursive (Root, [{file, Name, _}]) -> 
    232     Watcher = spawn_link (directory_watcher, init_recursive, [Root, self ()]), 
     232    Watcher = spawn_link (directory_watcher, init_recursive, [Root, send_me ()]), 
    233233    receive_all (), 
    234234    Path = filename: join (Root, Name), 
     
    244244 
    245245change_from_directory_to_file_when_recursive (Root, _) -> 
    246     Watcher = spawn_link (directory_watcher, init_recursive, [Root, self ()]), 
     246    Watcher = spawn_link (directory_watcher, init_recursive, [Root, send_me ()]), 
    247247    receive_all (), 
    248248    Subdir = filename: join ([Root, "subdir", "subsubdir"]), 
     
    254254     {{file, ""}, Subdir, found}] = receive_all (), 
    255255    ok. 
     256 
     257send_me () -> 
     258    Self = self (), 
     259    fun (E) -> 
     260            Self ! {directory_watcher, self (), E} 
     261    end. 
Note: See TracChangeset for help on using the changeset viewer.