diff --git a/cli/script/command-executor.ts b/cli/script/command-executor.ts index 89c1465e..7a698f4d 100644 --- a/cli/script/command-executor.ts +++ b/cli/script/command-executor.ts @@ -484,27 +484,6 @@ function generateRandomFilename(length: number): string { return filename; } -function isCurrentAccountOwner(map: CollaboratorMap): boolean { - if (map) { - var ownerEmail: string = getOwnerEmail(map); - return ownerEmail && map[ownerEmail].isCurrentAccount; - } - - return false; -} - -function getOwnerEmail(map: CollaboratorMap): string { - if (map) { - for (var key of Object.keys(map)) { - if (map[key].permission === Permissions.Owner) { - return key; - } - } - } - - return null; -} - function getTotalActiveFromDeploymentMetrics(metrics: DeploymentMetrics): number { var totalActive = 0; Object.keys(metrics).forEach((label: string) => { @@ -614,35 +593,12 @@ function formatDate(unixOffset: number): string { } } -function getAppDisplayName(app: App, appNameToCountMap: NameToCountMap): string { - if (appNameToCountMap && appNameToCountMap[app.name] > 1) { - var isCurrentUserOwner: boolean = isCurrentAccountOwner(app.collaborators); - return isCurrentUserOwner ? app.name : getOwnerEmail(app.collaborators) + "/" + app.name; - } else { - return app.name; - } -} - -function getNameToCountMap(apps: App[]): NameToCountMap { - var nameToCountMap: NameToCountMap = {}; - apps.forEach((app: App) => { - var ownerEmail: string = getOwnerEmail(app.collaborators); - if (!nameToCountMap[app.name]) { - nameToCountMap[app.name] = 1; - } else { - nameToCountMap[app.name] = nameToCountMap[app.name] + 1; - } - }); - - return nameToCountMap; -} - function printAppList(format: string, apps: App[], deploymentLists: string[][]): void { - var appNameToCountMap: NameToCountMap = getNameToCountMap(apps); - if (format === "json") { var dataSource: any[] = apps.map((app: App, index: number) => { - return { "name": getAppDisplayName(app, appNameToCountMap), "deployments": deploymentLists[index] }; + var augmentedApp: any = app; + augmentedApp.deployments = deploymentLists[index]; + return augmentedApp; }); printJson(dataSource); @@ -650,7 +606,7 @@ function printAppList(format: string, apps: App[], deploymentLists: string[][]): var headers = ["Name", "Deployments"]; printTable(headers, (dataSource: any[]): void => { apps.forEach((app: App, index: number): void => { - var row = [getAppDisplayName(app, appNameToCountMap), wordwrap(50)(deploymentLists[index].join(", "))]; + var row = [app.name, wordwrap(50)(deploymentLists[index].join(", "))]; dataSource.push(row); }); }); diff --git a/cli/test/cli.ts b/cli/test/cli.ts index 50dd2cdb..78b8f3ac 100644 --- a/cli/test/cli.ts +++ b/cli/test/cli.ts @@ -329,8 +329,26 @@ describe("CLI", () => { var actual: string = log.args[0][0]; var expected = [ - { name: "a", deployments: ["Production", "Staging"]}, - { name: "b", deployments: ["Production", "Staging"]} + { + name: "a", + collaborators: { + "a@a.com": { + permission: "Owner", + isCurrentAccount: true + } + }, + deployments: ["Production", "Staging"] + }, + { + name: "b", + collaborators: { + "a@a.com": { + permission: "Owner", + isCurrentAccount: true + } + }, + deployments: ["Production", "Staging"] + } ]; assertJsonDescribesObject(actual, expected);