anchor.diff:  ne_binary_pair() ->
       ?LET({B1, B2},
            {non_empty_binary(), non_empty_binary()},
  -         proper_types:oneof([{<<B1/binary,B2/binary>>, B1} ,{B1, <<B1/binary,B2/binary>>}])).
  +         proper_types:oneof([{<<B1/binary,"/",B2/binary>>, B1} ,{B1, <<B1/binary,"/",B2/binary>>}])).
   
   %% Two paths of the form P2 and P2P1 (e.g. foo and foo/bar) overlap
   prop_are_overlapping() ->
  
positive.code: -include_lib("proper/include/proper.hrl").
  -include_lib("eunit/include/eunit.hrl").
  
  -export([all/0, qc_path_overlap_test/1]).
  
  %% Tests description
  
  all() ->
      [qc_path_overlap_test].
  
  qc_path_overlap_test(_Config) ->
      ok = eunit:test(?MODULE).
  
  %% Test cases
  
negative.code:            ,cvmfs_lease_path_util:are_overlapping(Path1, Path2)).
  
  % Test cases
  qc_overlap_test() ->
      ?assertEqual(true, proper:quickcheck(prop_are_overlapping())).
  
  % Test cases
  spec_overlap_test() ->
      ?assert(cvmfs_lease_path_util:are_overlapping(<<"abc/def">>, <<"abc">>)),
      ?assert(cvmfs_lease_path_util:are_overlapping(<<"abc">>, <<"abc/def">>)),
      ?assertNot(cvmfs_lease_path_util:are_overlapping(<<"abcdef">>, <<"abc">>)),
      ?assertNot(cvmfs_lease_path_util:are_overlapping(<<"abc">>, <<"abcdef">>)),
      ?assertNot(cvmfs_lease_path_util:are_overlapping(<<"abc/def">>, <<"abc/de">>)),
      ?assertNot(cvmfs_lease_path_util:are_overlapping(<<"abc/de">>, <<"abc/def">>)),
      ?assertNot(cvmfs_lease_path_util:are_overlapping(<<"abc/def">>, <<"ab">>)),
      ?assertNot(cvmfs_lease_path_util:are_overlapping(<<"ab">>, <<"abc/def">>)).
  
  