Merge pull request #1178 from jareddellitt/fix-resolver

grpc-js: Change resolver to look at registeredResolvers when invoking getDefaultAuthority
This commit is contained in:
Michael Lumish 2019-11-11 13:20:09 -08:00 committed by GitHub
commit 52f54100aa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 2 deletions

View File

@ -140,7 +140,11 @@ function mergeArrays<T>(...arrays: T[][]): T[] {
const result: T[] = [];
for (
let i = 0;
i < Math.max.apply(null, arrays.map(array => array.length));
i <
Math.max.apply(
null,
arrays.map(array => array.length)
);
i++
) {
for (const array of arrays) {

View File

@ -125,7 +125,7 @@ export function createResolver(
* @param target
*/
export function getDefaultAuthority(target: string): string {
for (const prefix of Object.keys(registerDefaultResolver)) {
for (const prefix of Object.keys(registeredResolvers)) {
if (target.startsWith(prefix)) {
return registeredResolvers[prefix].getDefaultAuthority(target);
}

View File

@ -194,4 +194,23 @@ describe('Name Resolver', () => {
resolver.updateResolution();
});
});
describe('getDefaultAuthority', () => {
class OtherResolver implements resolverManager.Resolver {
updateResolution() {
return [];
}
static getDefaultAuthority(target: string): string {
return 'other';
}
}
it('Should return the correct authority if a different resolver has been registered', () => {
const target = 'other://name';
resolverManager.registerResolver('other:', OtherResolver);
const authority = resolverManager.getDefaultAuthority(target);
assert.equal(authority, 'other');
});
});
});