anchor.diff:  %% eqc property
   %% ====================================================================
   
  -prop_reverse() ->
  -    ?FORALL(Xs,list(int()),
  -        lists:reverse(lists:reverse(Xs)) == Xs).
  +prop_block_count() ->
  +    ?FORALL({CLength, BlockSize},{block_size(), content_length()},
  +        begin
  +            NumBlocks = riak_moss_lfs_utils:block_count(CLength, BlockSize),
  +            (NumBlocks * BlockSize) >= CLength
  +        end).
   
   %%====================================================================
   %% Generators
   %%====================================================================
  +
  +block_size() ->
  +    elements([bs(El) || El <- [4, 8, 16, 32, 64]]).
  +
  +content_length() ->
  +    ?LET(X, large_non_negs(), abs(X)).
  +
  +large_non_negs() ->
  +    ?SUCHTHAT(X, largeint(), X =/= 0).
   
   %%====================================================================
   %% Helpers
  
positive.code:     test(100).
  
  test(Iterations) ->
      eqc:quickcheck(eqc:numtests(Iterations, prop_reverse())).
  
  -endif.
  
negative.code:     {spawn,
          [%% Run the quickcheck tests
              {timeout, 60,
                  ?_assertEqual(true, quickcheck(numtests(?TEST_ITERATIONS, prop_block_count())))}
          ]
      }.
  
  