docs: function overrideInjection(obj, provides, injects) {
      if (!isFunction(obj)) {
        throw new Error('Expecting injectable function.');
      }
  
      function setupEnclosedInjectable() {
        var injected = arguments;
        return (function(){return obj.apply(obj, injected);}());
      }
  
      var overriddenObject = setupEnclosedInjectable;
      resolveProvide(overriddenObject, provides);
      resolveInjects(overriddenObject, injects);
  
      return overriddenObject;
    }