From 5f6cf321bb0341f3f3408785e53ed4097a52fc1e Mon Sep 17 00:00:00 2001
From: Rhys Arkins <rhys@keylocation.sg>
Date: Thu, 20 Apr 2017 12:11:56 +0200
Subject: [PATCH] Add missing ensurePr tests (#176)

---
 .../__snapshots__/versions.spec.js.snap       | 13 ++++++++++
 test/workers/pr.spec.js                       | 26 +++++++++++++++++++
 2 files changed, 39 insertions(+)
 create mode 100644 test/helpers/__snapshots__/versions.spec.js.snap

diff --git a/test/helpers/__snapshots__/versions.spec.js.snap b/test/helpers/__snapshots__/versions.spec.js.snap
new file mode 100644
index 0000000000..21b5eb1adc
--- /dev/null
+++ b/test/helpers/__snapshots__/versions.spec.js.snap
@@ -0,0 +1,13 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`helpers/versions .determineUpgrades(dep, currentVersion, defaultConfig) returns only one update if grouping 1`] = `
+Array [
+  Object {
+    "changeLogFromVersion": "0.4.4",
+    "changeLogToVersion": "1.4.1",
+    "newVersion": "1.4.1",
+    "newVersionMajor": 1,
+    "upgradeType": "major",
+  },
+]
+`;
diff --git a/test/workers/pr.spec.js b/test/workers/pr.spec.js
index 9ca71e25b9..2ec90424d5 100644
--- a/test/workers/pr.spec.js
+++ b/test/workers/pr.spec.js
@@ -29,6 +29,32 @@ describe('workers/pr', () => {
       const pr = await prWorker.ensurePr(config);
       expect(pr).toBe(null);
     });
+    it('should return null if waiting for success', async () => {
+      config.api.getBranchStatus = jest.fn(() => 'failed');
+      config.prCreation = 'status-success';
+      const pr = await prWorker.ensurePr(config);
+      expect(pr).toBe(null);
+    });
+    it('should create PR if success', async () => {
+      config.api.getBranchStatus = jest.fn(() => 'success');
+      config.api.getBranchPr = jest.fn();
+      config.prCreation = 'status-success';
+      const pr = await prWorker.ensurePr(config);
+      expect(pr).toMatchObject({ displayNumber: 'New Pull Request' });
+    });
+    it('should return null if waiting for not pending', async () => {
+      config.api.getBranchStatus = jest.fn(() => 'pending');
+      config.prCreation = 'not-pending';
+      const pr = await prWorker.ensurePr(config);
+      expect(pr).toBe(null);
+    });
+    it('should create PR if no longer pending', async () => {
+      config.api.getBranchStatus = jest.fn(() => 'failed');
+      config.api.getBranchPr = jest.fn();
+      config.prCreation = 'not-pending';
+      const pr = await prWorker.ensurePr(config);
+      expect(pr).toMatchObject({ displayNumber: 'New Pull Request' });
+    });
     it('should create new branch if none exists', async () => {
       config.api.getBranchPr = jest.fn();
       const pr = await prWorker.ensurePr(config);
-- 
GitLab