I have observed the same behavior during test execution. It is strange that on production code works fine and fails only on tests.
Easy solution to make your tests happy is to add catch(angular.noop)
to your promise mock. In case of example above it should looks like this:
resourceMock.get = function () {_x000D_
var deferred = $q.defer();_x000D_
deferred.reject(error);_x000D_
return { $promise: deferred.promise.catch(angular.noop) };_x000D_
};
_x000D_