Skip to content

Commit

Permalink
Removed use of .name where practical to support minification
Browse files Browse the repository at this point in the history
  • Loading branch information
Tony Wieser committed May 31, 2019
1 parent 5c815e2 commit 217b0cd
Show file tree
Hide file tree
Showing 13 changed files with 36 additions and 39 deletions.
4 changes: 2 additions & 2 deletions spec/content/BatchRequestContent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,13 +48,13 @@ describe("BatchRequestContent.ts", () => {
this.timeout(20 * 1000);
it("Should Create BatchRequestContent instance with no requests", (done) => {
const batchReq = new BatchRequestContent();
assert.equal(batchReq.constructor.name, "BatchRequestContent");
assert(batchReq instanceof BatchRequestContent);
done();
});

it("Should create BatchRequestContent instance with empty array", (done) => {
const batchReq = new BatchRequestContent([]);
assert.equal(batchReq.constructor.name, "BatchRequestContent");
assert(batchReq instanceof BatchRequestContent);
done();
});

Expand Down
4 changes: 2 additions & 2 deletions spec/middleware/MiddlewareControl.ts
Original file line number Diff line number Diff line change
Expand Up @@ -36,14 +36,14 @@ describe("MiddlewareControl.ts", () => {
describe("getMiddlewareOption", () => {
it("Should return the middleware option for a given class name", () => {
const middlewareControl = new MiddlewareControl([dummyHandlerOption]);
const retryOptions: DummyHandlerOptions = middlewareControl.getMiddlewareOptions(dummyHandlerOption.constructor.name) as DummyHandlerOptions;
const retryOptions: DummyHandlerOptions = middlewareControl.getMiddlewareOptions(dummyHandlerOption.constructor as () => any) as DummyHandlerOptions;
assert.isDefined(retryOptions);
assert.equal(dummyHandlerOption, retryOptions);
});

it("Should return undefined for unknown class name", () => {
const middlewareControl = new MiddlewareControl([dummyHandlerOption]);
const retryOptions = middlewareControl.getMiddlewareOptions("NotAvailableHandlerOption");
const retryOptions = middlewareControl.getMiddlewareOptions(() => "NotAvailableHandlerOption");
assert.isUndefined(retryOptions);
});
});
Expand Down
6 changes: 3 additions & 3 deletions spec/middleware/TelemetryHandlerOptions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ describe("TelemetryHandlerOptions.ts", () => {
middlewareControl: new MiddlewareControl(),
};
TelemetryHandlerOptions.updateFeatureUsageFlag(context, FeatureUsageFlag.AUTHENTICATION_HANDLER_ENABLED);
const options: TelemetryHandlerOptions = context.middlewareControl.getMiddlewareOptions(TelemetryHandlerOptions.name) as TelemetryHandlerOptions;
const options: TelemetryHandlerOptions = context.middlewareControl.getMiddlewareOptions(TelemetryHandlerOptions) as TelemetryHandlerOptions;
assert.equal(options["featureUsage"], FeatureUsageFlag.AUTHENTICATION_HANDLER_ENABLED);
});

Expand All @@ -37,7 +37,7 @@ describe("TelemetryHandlerOptions.ts", () => {
middlewareControl: new MiddlewareControl([new TelemetryHandlerOptions()]),
};
TelemetryHandlerOptions.updateFeatureUsageFlag(context, FeatureUsageFlag.AUTHENTICATION_HANDLER_ENABLED);
const options: TelemetryHandlerOptions = context.middlewareControl.getMiddlewareOptions(TelemetryHandlerOptions.name) as TelemetryHandlerOptions;
const options: TelemetryHandlerOptions = context.middlewareControl.getMiddlewareOptions(TelemetryHandlerOptions) as TelemetryHandlerOptions;
assert.equal(options["featureUsage"], FeatureUsageFlag.AUTHENTICATION_HANDLER_ENABLED);
});

Expand All @@ -46,7 +46,7 @@ describe("TelemetryHandlerOptions.ts", () => {
request: "url",
};
TelemetryHandlerOptions.updateFeatureUsageFlag(context, FeatureUsageFlag.AUTHENTICATION_HANDLER_ENABLED);
const options: TelemetryHandlerOptions = context.middlewareControl.getMiddlewareOptions(TelemetryHandlerOptions.name) as TelemetryHandlerOptions;
const options: TelemetryHandlerOptions = context.middlewareControl.getMiddlewareOptions(TelemetryHandlerOptions) as TelemetryHandlerOptions;
assert.equal(options["featureUsage"], FeatureUsageFlag.AUTHENTICATION_HANDLER_ENABLED);
});
});
Expand Down
4 changes: 2 additions & 2 deletions spec/tasks/PageIterator.ts
Original file line number Diff line number Diff line change
Expand Up @@ -61,12 +61,12 @@ describe("PageIterator.ts", () => {
describe("Constructor", () => {
it("Should create instance without nextLink", () => {
const pageIterator = new PageIterator(client, getPageCollection(), truthyCallback);
assert.equal(pageIterator.constructor.name, "PageIterator");
assert(pageIterator instanceof PageIterator);
});

it("Should create instance with nextLink", () => {
const pageIterator = new PageIterator(client, getPageCollectionWithNext(), truthyCallback);
assert.equal(pageIterator.constructor.name, "PageIterator");
assert(pageIterator instanceof PageIterator);
});
});

Expand Down
2 changes: 1 addition & 1 deletion src/GraphErrorHandler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ export class GraphErrorHandler {
let gError: GraphError;
if (error && error.error) {
gError = GraphErrorHandler.constructErrorFromResponse(error, statusCode);
} else if (error && error.constructor.name === "Error") {
} else if (error instanceof Error) {
gError = GraphErrorHandler.constructError(error, statusCode);
} else {
gError = new GraphError(statusCode);
Expand Down
2 changes: 1 addition & 1 deletion src/GraphRequest.ts
Original file line number Diff line number Diff line change
Expand Up @@ -551,7 +551,7 @@ export class GraphRequest {
method: RequestMethod.POST,
body: serializeContent(content),
headers:
content.constructor !== undefined && content.constructor.name === "FormData"
content instanceof FormData
? {}
: {
"Content-Type": "application/json",
Expand Down
2 changes: 1 addition & 1 deletion src/middleware/AuthenticationHandler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ export class AuthenticationHandler implements Middleware {
try {
let options: AuthenticationHandlerOptions;
if (context.middlewareControl instanceof MiddlewareControl) {
options = context.middlewareControl.getMiddlewareOptions(AuthenticationHandlerOptions.name) as AuthenticationHandlerOptions;
options = context.middlewareControl.getMiddlewareOptions(AuthenticationHandlerOptions) as AuthenticationHandlerOptions;
}
let authenticationProvider: AuthenticationProvider;
let authenticationProviderOptions: AuthenticationProviderOptions;
Expand Down
16 changes: 8 additions & 8 deletions src/middleware/MiddlewareControl.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ export class MiddlewareControl {
* @private
* A member holding map of MiddlewareOptions
*/
private middlewareOptions: Map<string, MiddlewareOptions>;
private middlewareOptions: Map<Function, MiddlewareOptions>;

/**
* @public
Expand All @@ -30,10 +30,10 @@ export class MiddlewareControl {
* @returns The instance of MiddlewareControl
*/
public constructor(middlewareOptions: MiddlewareOptions[] = []) {
this.middlewareOptions = new Map<string, MiddlewareOptions>();
this.middlewareOptions = new Map<Function, MiddlewareOptions>();
for (const option of middlewareOptions) {
const name = option.constructor.name;
this.middlewareOptions.set(name, option);
const fn = option.constructor;
this.middlewareOptions.set(fn, option);
}
}

Expand All @@ -43,8 +43,8 @@ export class MiddlewareControl {
* @param {string} name - The class name of the strongly typed option class
* @returns The middleware option
*/
public getMiddlewareOptions(name: string): MiddlewareOptions {
return this.middlewareOptions.get(name);
public getMiddlewareOptions(fn: Function): MiddlewareOptions {
return this.middlewareOptions.get(fn);
}

/**
Expand All @@ -54,7 +54,7 @@ export class MiddlewareControl {
* @param {MiddlewareOptions} option - The strongly typed middleware option
* @returns nothing
*/
public setMiddlewareOptions(name: string, option: MiddlewareOptions): void {
this.middlewareOptions.set(name, option);
public setMiddlewareOptions(fn: Function, option: MiddlewareOptions): void {
this.middlewareOptions.set(fn, option);
}
}
2 changes: 1 addition & 1 deletion src/middleware/RedirectHandler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ export class RedirectHandler implements Middleware {
private getOptions(context: Context): RedirectHandlerOptions {
let options: RedirectHandlerOptions;
if (context.middlewareControl instanceof MiddlewareControl) {
options = context.middlewareControl.getMiddlewareOptions(this.options.constructor.name) as RedirectHandlerOptions;
options = context.middlewareControl.getMiddlewareOptions(RedirectHandlerOptions) as RedirectHandlerOptions;
}
if (typeof options === "undefined") {
options = Object.assign(new RedirectHandlerOptions(), this.options);
Expand Down
2 changes: 1 addition & 1 deletion src/middleware/RetryHandler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ export class RetryHandler implements Middleware {
private getOptions(context: Context): RetryHandlerOptions {
let options: RetryHandlerOptions;
if (context.middlewareControl instanceof MiddlewareControl) {
options = context.middlewareControl.getMiddlewareOptions(this.options.constructor.name) as RetryHandlerOptions;
options = context.middlewareControl.getMiddlewareOptions(this.options.constructor) as RetryHandlerOptions;
}
if (typeof options === "undefined") {
options = Object.assign(new RetryHandlerOptions(), this.options);
Expand Down
2 changes: 1 addition & 1 deletion src/middleware/TelemetryHandler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ export class TelemetryHandler implements Middleware {
let sdkVersionValue: string = `${TelemetryHandler.PRODUCT_NAME}/${PACKAGE_VERSION}`;
let options: TelemetryHandlerOptions;
if (context.middlewareControl instanceof MiddlewareControl) {
options = context.middlewareControl.getMiddlewareOptions(TelemetryHandlerOptions.name) as TelemetryHandlerOptions;
options = context.middlewareControl.getMiddlewareOptions(TelemetryHandlerOptions) as TelemetryHandlerOptions;
}
if (typeof options !== "undefined") {
const featureUsage: string = options.getFeatureUsage();
Expand Down
4 changes: 2 additions & 2 deletions src/middleware/options/TelemetryHandlerOptions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,13 +52,13 @@ export class TelemetryHandlerOptions implements MiddlewareOptions {
public static updateFeatureUsageFlag(context: Context, flag: FeatureUsageFlag): void {
let options: TelemetryHandlerOptions;
if (context.middlewareControl instanceof MiddlewareControl) {
options = context.middlewareControl.getMiddlewareOptions(TelemetryHandlerOptions.name) as TelemetryHandlerOptions;
options = context.middlewareControl.getMiddlewareOptions(TelemetryHandlerOptions) as TelemetryHandlerOptions;
} else {
context.middlewareControl = new MiddlewareControl();
}
if (typeof options === "undefined") {
options = new TelemetryHandlerOptions();
context.middlewareControl.setMiddlewareOptions(TelemetryHandlerOptions.name, options);
context.middlewareControl.setMiddlewareOptions(TelemetryHandlerOptions, options);
}
options.setFeatureUsage(flag);
}
Expand Down
25 changes: 11 additions & 14 deletions src/tasks/OneDriveLargeFileUploadTask.ts
Original file line number Diff line number Diff line change
Expand Up @@ -76,21 +76,18 @@ export class OneDriveLargeFileUploadTask extends LargeFileUploadTask {
const name: string = options.fileName;
let content;
let size;
switch (file.constructor.name) {
case "Blob":
content = new File([file as Blob], name);
size = content.size;
break;
case "File":
content = file as File;
size = content.size;
break;
case "Buffer":
const b = file as Buffer;
size = b.byteLength - b.byteOffset;
content = b.buffer.slice(b.byteOffset, b.byteOffset + b.byteLength);
break;
if (file instanceof Blob) {
content = new File([file as Blob], name);
size = content.size;
} else if (file instanceof File) {
content = file as File;
size = content.size;
} else if (file instanceof Buffer) {
const b = file as Buffer;
size = b.byteLength - b.byteOffset;
content = b.buffer.slice(b.byteOffset, b.byteOffset + b.byteLength);
}

try {
const requestUrl = OneDriveLargeFileUploadTask.constructCreateSessionUrl(options.fileName, options.path);
const session = await OneDriveLargeFileUploadTask.createUploadSession(client, requestUrl, options.fileName);
Expand Down

0 comments on commit 217b0cd

Please sign in to comment.