From 65412428a20f4e90fb376cf86beb74c28d4183f8 Mon Sep 17 00:00:00 2001
From: Rhys Arkins <rhys@arkins.net>
Date: Wed, 24 Jul 2019 07:54:26 +0200
Subject: [PATCH] refactor: homebrew repoName

---
 lib/manager/homebrew/extract.js               |  3 +--
 lib/manager/homebrew/update.js                | 10 +++----
 .../__snapshots__/extract.spec.js.snap        | 26 +++++++++----------
 test/manager/homebrew/update.spec.js          | 20 +++++++-------
 4 files changed, 29 insertions(+), 30 deletions(-)

diff --git a/lib/manager/homebrew/extract.js b/lib/manager/homebrew/extract.js
index 531ec2051c..497f5bc05e 100644
--- a/lib/manager/homebrew/extract.js
+++ b/lib/manager/homebrew/extract.js
@@ -48,8 +48,7 @@ function extractPackageFile(content) {
   const dep = {
     depName: `${ownerName}/${repoName}`,
     url,
-    managerData: { ownerName, sha256 },
-    repoName,
+    managerData: { ownerName, repoName, sha256 },
     currentValue,
     datasource: 'github',
   };
diff --git a/lib/manager/homebrew/update.js b/lib/manager/homebrew/update.js
index 2079819fa6..d48711c032 100644
--- a/lib/manager/homebrew/update.js
+++ b/lib/manager/homebrew/update.js
@@ -31,10 +31,10 @@ async function updateDependency(content, upgrade) {
   }
   try {
     newUrl = `https://github.com/${upgrade.managerData.ownerName}/${
-      upgrade.repoName
-    }/releases/download/${upgrade.newValue}/${upgrade.repoName}-${coerce(
-      upgrade.newValue
-    )}.tar.gz`;
+      upgrade.managerData.repoName
+    }/releases/download/${upgrade.newValue}/${
+      upgrade.managerData.repoName
+    }-${coerce(upgrade.newValue)}.tar.gz`;
     file = (await got(newUrl, {
       encoding: null,
     })).body;
@@ -43,7 +43,7 @@ async function updateDependency(content, upgrade) {
       `Failed to download release download for ${upgrade.depName} - trying archive instead`
     );
     try {
-      newUrl = `https://github.com/${upgrade.managerData.ownerName}/${upgrade.repoName}/archive/${upgrade.newValue}.tar.gz`;
+      newUrl = `https://github.com/${upgrade.managerData.ownerName}/${upgrade.managerData.repoName}/archive/${upgrade.newValue}.tar.gz`;
       file = (await got(newUrl, { encoding: null })).body;
     } catch (errInner) {
       logger.debug(
diff --git a/test/manager/homebrew/__snapshots__/extract.spec.js.snap b/test/manager/homebrew/__snapshots__/extract.spec.js.snap
index 46b2586dff..4e47a69182 100644
--- a/test/manager/homebrew/__snapshots__/extract.spec.js.snap
+++ b/test/manager/homebrew/__snapshots__/extract.spec.js.snap
@@ -9,9 +9,9 @@ Object {
       "depName": "bazelbuild/bazel-watcher",
       "managerData": Object {
         "ownerName": "bazelbuild",
+        "repoName": "bazel-watcher",
         "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4",
       },
-      "repoName": "bazel-watcher",
       "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz",
     },
   ],
@@ -27,9 +27,9 @@ Object {
       "depName": "aide/aide",
       "managerData": Object {
         "ownerName": "aide",
+        "repoName": "aide",
         "sha256": "0f2b7cecc70c1a27d35c06c98804fcdb9f326630de5d035afc447122186010b7",
       },
-      "repoName": "aide",
       "url": "https://github.com/aide/aide/releases/download/v0.16.1/aide-0.16.1.tar.gz",
     },
   ],
@@ -45,9 +45,9 @@ Object {
       "depName": "bazelbuild/bazel-watcher",
       "managerData": Object {
         "ownerName": "bazelbuild",
+        "repoName": "bazel-watcher",
         "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4",
       },
-      "repoName": "bazel-watcher",
       "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz",
     },
   ],
@@ -63,9 +63,9 @@ Object {
       "depName": "Acmetool",
       "managerData": Object {
         "ownerName": null,
+        "repoName": null,
         "sha256": "6f2cf5cfb987a2df2f791c162209039804fd8fd12692da69f52153ec9668e9ca",
       },
-      "repoName": null,
       "skipReason": "unsupported-url",
       "url": "https://github.com/hlandau/acme.git",
     },
@@ -82,9 +82,9 @@ Object {
       "depName": "Ibazel",
       "managerData": Object {
         "ownerName": null,
+        "repoName": null,
         "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4",
       },
-      "repoName": null,
       "skipReason": "unsupported-url",
       "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.not_tar.not_gz",
     },
@@ -101,9 +101,9 @@ Object {
       "depName": "Ibazel",
       "managerData": Object {
         "ownerName": null,
+        "repoName": null,
         "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4",
       },
-      "repoName": null,
       "skipReason": "unsupported-url",
       "url": "https://github.com/bazelbuild/bazel-watcher/archive/vInvalid.version.2.tar.gz",
     },
@@ -120,9 +120,9 @@ Object {
       "depName": "Ibazel",
       "managerData": Object {
         "ownerName": null,
+        "repoName": null,
         "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4",
       },
-      "repoName": null,
       "skipReason": "unsupported-url",
       "url": null,
     },
@@ -139,9 +139,9 @@ Object {
       "depName": "Ibazel",
       "managerData": Object {
         "ownerName": null,
+        "repoName": null,
         "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4",
       },
-      "repoName": null,
       "skipReason": "unsupported-url",
       "url": "invalid_url",
     },
@@ -158,9 +158,9 @@ Object {
       "depName": "bazelbuild/bazel-watcher",
       "managerData": Object {
         "ownerName": "bazelbuild",
+        "repoName": "bazel-watcher",
         "sha256": "26f5125218fad2741d3caf937b0229",
       },
-      "repoName": "bazel-watcher",
       "skipReason": "invalid-sha256",
       "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz",
     },
@@ -177,9 +177,9 @@ Object {
       "depName": "bazelbuild/bazel-watcher",
       "managerData": Object {
         "ownerName": "bazelbuild",
+        "repoName": "bazel-watcher",
         "sha256": null,
       },
-      "repoName": "bazel-watcher",
       "skipReason": "invalid-sha256",
       "url": "https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz",
     },
@@ -196,9 +196,9 @@ Object {
       "depName": "Ibazel",
       "managerData": Object {
         "ownerName": null,
+        "repoName": null,
         "sha256": "26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4",
       },
-      "repoName": null,
       "skipReason": "unsupported-url",
       "url": null,
     },
@@ -215,9 +215,9 @@ Object {
       "depName": "Aalib",
       "managerData": Object {
         "ownerName": null,
+        "repoName": null,
         "sha256": "fbddda9230cf6ee2a4f5706b4b11e2190ae45f5eda1f0409dc4f99b35e0a70ee",
       },
-      "repoName": null,
       "skipReason": "unsupported-url",
       "url": "https://downloads.sourceforge.net/aa-project/aalib-1.4rc5.tar.gz",
     },
@@ -234,9 +234,9 @@ Object {
       "depName": "Aap",
       "managerData": Object {
         "ownerName": null,
+        "repoName": null,
         "sha256": "3f53b2fc277756042449416150acc477f29de93692944f8a77e8cef285a1efd8",
       },
-      "repoName": null,
       "skipReason": "unsupported-url",
       "url": "https://downloads.sourceforge.net/project/a-a-p/aap-1.094.zip",
     },
diff --git a/test/manager/homebrew/update.spec.js b/test/manager/homebrew/update.spec.js
index 57f17a4d06..ce1b00061f 100644
--- a/test/manager/homebrew/update.spec.js
+++ b/test/manager/homebrew/update.spec.js
@@ -20,10 +20,10 @@ describe('manager/homebrew/update', () => {
       depName: 'Aide',
       managerData: {
         ownerName: 'aide',
+        repoName: 'aide',
         sha256:
           '0f2b7cecc70c1a27d35c06c98804fcdb9f326630de5d035afc447122186010b7',
       },
-      repoName: 'aide',
       url:
         'https://github.com/aide/aide/releases/download/v0.16.1/aide-0.16.1.tar.gz',
       newValue: 'v0.17.7',
@@ -40,10 +40,10 @@ describe('manager/homebrew/update', () => {
       depName: 'Ibazel',
       managerData: {
         ownerName: 'bazelbuild',
+        repoName: 'bazel-watcher',
         sha256:
           '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4',
       },
-      repoName: 'bazel-watcher',
       url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz',
       newValue: 'v0.9.3',
     };
@@ -59,10 +59,10 @@ describe('manager/homebrew/update', () => {
       depName: 'Ibazel',
       managerData: {
         ownerName: 'bazelbuild',
+        repoName: 'bazel-watcher',
         sha256:
           '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4',
       },
-      repoName: 'bazel-watcher',
       url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz',
       newValue: 'v0.9.3',
     };
@@ -80,10 +80,10 @@ describe('manager/homebrew/update', () => {
       depName: 'Ibazel',
       managerData: {
         ownerName: 'bazelbuild',
+        repoName: 'bazel-watcher',
         sha256:
           '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4',
       },
-      repoName: 'bazel-watcher',
       url: 'invalid_url',
       newValue: 'v0.9.3',
     };
@@ -101,10 +101,10 @@ describe('manager/homebrew/update', () => {
       depName: 'Ibazel',
       managerData: {
         ownerName: 'bazelbuild',
+        repoName: 'invalid/repo/name',
         sha256:
           '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4',
       },
-      repoName: 'invalid/repo/name',
       url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz',
       newValue: 'v0.9.3',
     };
@@ -126,10 +126,10 @@ describe('manager/homebrew/update', () => {
       depName: 'Ibazel',
       managerData: {
         ownerName: 'bazelbuild',
+        repoName: 'wrong-version/archive/v10.2.3.tar.gz',
         sha256:
           '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4',
       },
-      repoName: 'wrong-version/archive/v10.2.3.tar.gz',
       url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz',
       newValue: 'v0.9.3',
     };
@@ -158,10 +158,10 @@ describe('manager/homebrew/update', () => {
       depName: 'Ibazel',
       managerData: {
         ownerName: 'bazelbuild',
+        repoName: 'bazel-watcher',
         sha256:
           '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4',
       },
-      repoName: 'bazel-watcher',
       url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz',
       newValue: 'v0.9.3',
     };
@@ -185,10 +185,10 @@ describe('manager/homebrew/update', () => {
       depName: 'Ibazel',
       managerData: {
         ownerName: 'bazelbuild',
+        repoName: 'bazel-watcher',
         sha256:
           '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4',
       },
-      repoName: 'bazel-watcher',
       url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz',
       newValue: 'v0.9.3',
     };
@@ -213,10 +213,10 @@ describe('manager/homebrew/update', () => {
       depName: 'Ibazel',
       managerData: {
         ownerName: 'bazelbuild',
+        repoName: 'bazel-watcher',
         sha256:
           '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4',
       },
-      repoName: 'bazel-watcher',
       url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz',
       newValue: 'v0.9.3',
     };
@@ -240,10 +240,10 @@ describe('manager/homebrew/update', () => {
       depName: 'Ibazel',
       managerData: {
         ownerName: 'bazelbuild',
+        repoName: 'bazel-watcher',
         sha256:
           '26f5125218fad2741d3caf937b02296d803900e5f153f5b1f733f15391b9f9b4',
       },
-      repoName: 'bazel-watcher',
       url: 'https://github.com/bazelbuild/bazel-watcher/archive/v0.8.2.tar.gz',
       newValue: 'v0.9.3',
     };
-- 
GitLab