anchor.diff:      edis_db:process(0),
       #edis_command{cmd = <<"GETRANGE">>, args = [<<"test-string">>, 1, -2],
                     group = strings, result_type = number}).
  +
  +-spec getset([binary()]) -> binary().
  +getset([Key|_]) ->
  +  edis_db:run(
  +    edis_db:process(0),
  +    #edis_command{cmd = <<"GETSET">>, args = [<<"test-string">>, Key],
  +                  group = strings, result_type = bulk}).
  +
  +-spec incr([binary()]) -> integer().
  +incr(_) ->
  +  edis_db:run(
  +    edis_db:process(0),
  +    #edis_command{cmd = <<"INCR">>, args = [<<"test-string">>],
  +                  group = strings, result_type = number}).
  +
  +-spec incrby([binary()]) -> integer().
  +incrby(Keys) ->
  +  edis_db:run(
  +    edis_db:process(0),
  +    #edis_command{cmd = <<"INCRBY">>, args = [<<"test-string">>, length(Keys)],
  +                  group = strings, result_type = number}).
  +
  +-spec mget([binary()]) -> [binary()].
  +mget(Keys) ->
  +  edis_db:run(
  +    edis_db:process(0),
  +    #edis_command{cmd = <<"MGET">>, args = Keys, group = strings, result_type = multi_bulk}).
  +
  +-spec mset([binary()]) -> ok.
  +mset(Keys) ->
  +  edis_db:run(
  +    edis_db:process(0),
  +    #edis_command{cmd = <<"MSET">>, args = [{Key, <<"X">>} || Key <- Keys],
  +                  result_type = ok, group = strings}).
  +
  +-spec msetnx([binary()]) -> ok.
  +msetnx(Keys) ->
  +  edis_db:run(
  +    edis_db:process(0),
  +    #edis_command{cmd = <<"MSET">>, args = [{Key, <<"X">>} || Key <- Keys],
  +                  result_type = ok, group = strings}).
positive.code: -export([all/0,
           init/0, init_per_testcase/1, init_per_round/2,
           quit/0, quit_per_testcase/1, quit_per_round/2]).
  -export([append/1, decr/1, decrby/1, get/1, getbit/1, getrange/1]).
  
  %% ====================================================================
  %% External functions
  
negative.code: init_per_round(Fun, Keys) when Fun =:= append;
                                 Fun =:= get;
                                 Fun =:= getbit;
                                 Fun =:= getrange;
                                 Fun =:= getset ->
    [{ok, Deleted} | OkKeys] =
      edis_db:run(
        edis_db:process(0),
  