diff --git a/angularjs/angular-resource-tests.ts b/angularjs/angular-resource-tests.ts
new file mode 100644
index 0000000000..c2378350d1
--- /dev/null
+++ b/angularjs/angular-resource-tests.ts
@@ -0,0 +1,74 @@
+///
+
+///////////////////////////////////////
+// IActionDescriptor
+///////////////////////////////////////
+var actionDescriptor: ng.resource.IActionDescriptor;
+
+actionDescriptor.headers = { header: 'value' };
+actionDescriptor.isArray = true;
+actionDescriptor.method = 'method action';
+actionDescriptor.params = { key: 'value' };
+
+
+///////////////////////////////////////
+// IResourceClass
+///////////////////////////////////////
+var resourceClass: ng.resource.IResourceClass;
+var resource: ng.resource.IResource;
+
+resource = resourceClass.delete();
+resource = resourceClass.delete({ key: 'value' });
+resource = resourceClass.delete({ key: 'value' }, function () { });
+resource = resourceClass.delete(function () { });
+resource = resourceClass.delete(function () { }, function () { });
+resource = resourceClass.delete({ key: 'value' }, { key: 'value' });
+resource = resourceClass.delete({ key: 'value' }, { key: 'value' }, function () { });
+resource = resourceClass.delete({ key: 'value' }, { key: 'value' }, function () { }, function () { });
+
+resource = resourceClass.get();
+resource = resourceClass.get({ key: 'value' });
+resource = resourceClass.get({ key: 'value' }, function () { });
+resource = resourceClass.get(function () { });
+resource = resourceClass.get(function () { }, function () { });
+resource = resourceClass.get({ key: 'value' }, { key: 'value' });
+resource = resourceClass.get({ key: 'value' }, { key: 'value' }, function () { });
+resource = resourceClass.get({ key: 'value' }, { key: 'value' }, function () { }, function () { });
+
+resource = resourceClass.query();
+resource = resourceClass.query({ key: 'value' });
+resource = resourceClass.query({ key: 'value' }, function () { });
+resource = resourceClass.query(function () { });
+resource = resourceClass.query(function () { }, function () { });
+resource = resourceClass.query({ key: 'value' }, { key: 'value' });
+resource = resourceClass.query({ key: 'value' }, { key: 'value' }, function () { });
+resource = resourceClass.query({ key: 'value' }, { key: 'value' }, function () { }, function () { });
+
+resource = resourceClass.remove();
+resource = resourceClass.remove({ key: 'value' });
+resource = resourceClass.remove({ key: 'value' }, function () { });
+resource = resourceClass.remove(function () { });
+resource = resourceClass.remove(function () { }, function () { });
+resource = resourceClass.remove({ key: 'value' }, { key: 'value' });
+resource = resourceClass.remove({ key: 'value' }, { key: 'value' }, function () { });
+resource = resourceClass.remove({ key: 'value' }, { key: 'value' }, function () { }, function () { });
+
+resource = resourceClass.save();
+resource = resourceClass.save({ key: 'value' });
+resource = resourceClass.save({ key: 'value' }, function () { });
+resource = resourceClass.save(function () { });
+resource = resourceClass.save(function () { }, function () { });
+resource = resourceClass.save({ key: 'value' }, { key: 'value' });
+resource = resourceClass.save({ key: 'value' }, { key: 'value' }, function () { });
+resource = resourceClass.save({ key: 'value' }, { key: 'value' }, function () { }, function () { });
+
+
+///////////////////////////////////////
+// IModule
+///////////////////////////////////////
+var mod: ng.IModule;
+var resourceServiceFactoryFunction: ng.resource.IResourceServiceFactoryFunction;
+var resourceService: ng.resource.IResourceService;
+
+resourceServiceFactoryFunction = function (resourceService) { return resourceClass };
+mod = mod.factory('factory name', resourceServiceFactoryFunction);
diff --git a/angularjs/angular-resource.d.ts b/angularjs/angular-resource.d.ts
index 4589788d1c..a845cb3d6d 100644
--- a/angularjs/angular-resource.d.ts
+++ b/angularjs/angular-resource.d.ts
@@ -1,7 +1,6 @@
-// Type definitions for Angular JS 1.2 (ngResource module)
+// Type definitions for Angular JS 1.2.0 (ngResource module)
// Project: http://angularjs.org
-// Definitions by: Diego Vilar
-// Definitions: https://github.com/borisyankov/DefinitelyTyped
+// Definitions: https://github.com/daptiv/DefinitelyTyped
///
@@ -19,10 +18,10 @@ declare module ng.resource {
// that deeply.
///////////////////////////////////////////////////////////////////////////
interface IResourceService {
- (url: string, paramDefaults?: any,
- /** example: {update: { method: 'PUT' }, delete: deleteDescriptor }
- where deleteDescriptor : IActionDescriptor */
- actionDescriptors?: any): IResourceClass;
+ (url: string, paramDefaults?: any,
+ /** example: {update: { method: 'PUT' }, delete: deleteDescriptor }
+ where deleteDescriptor : IActionDescriptor */
+ actionDescriptors?: any): IResourceClass;
}
// Just a reference to facilitate describing new actions