anchor.diff:          {AppName, AppData} ->
               {ok, AppName, AppData}
       end.
  +
  +get_value(Key, AppInfo, AppFile) ->
  +    case proplists:get_value(Key, AppInfo) of
  +        undefined ->
  +            ?ABORT("Failed to get app value '~p' from '~s'~n", [Key, AppFile]);
  +        Value ->
  +            Value
  +    end.
  
positive.code: app_applications(AppFile) ->
      case load_app_file(AppFile) of
          {ok, _, AppInfo} ->
              proplists:get_value(applications, AppInfo);
          {error, Reason} ->
              ?ABORT("Failed to extract applications from ~s: ~p\n",
                     [AppFile, Reason])
  
negative.code: app_vsn(AppFile) ->
      case load_app_file(AppFile) of
          {ok, _, AppInfo} ->
              get_value(vsn, AppInfo, AppFile);
          {error, Reason} ->
              ?ABORT("Failed to extract vsn from ~s: ~p\n",
                     [AppFile, Reason])
  