From 1fbdce8916151df2b31eebc5de29a1365e5dadff Mon Sep 17 00:00:00 2001
From: Dan J Miller <danjm.com@gmail.com>
Date: Mon, 10 Dec 2018 18:21:00 -0330
Subject: Improve ux for low gas price set (#5862)

* Show user warning if they set gas price below safelow minimum, error if 0.

* Properly cache basic price estimate data.

* Default retry price to recommended price if original price was 0x0

* Use mock fetch in send-new-ui integration tests.
---
 test/integration/lib/send-new-ui.js | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

(limited to 'test/integration/lib/send-new-ui.js')

diff --git a/test/integration/lib/send-new-ui.js b/test/integration/lib/send-new-ui.js
index 98e5f549b..1acd85a35 100644
--- a/test/integration/lib/send-new-ui.js
+++ b/test/integration/lib/send-new-ui.js
@@ -4,6 +4,7 @@ const {
   queryAsync,
   findAsync,
 } = require('../../lib/util')
+const fetchMockResponses = require('../../e2e/beta/fetch-mocks.js')
 
 QUnit.module('new ui send flow')
 
@@ -22,6 +23,19 @@ global.ethQuery = {
 global.ethereumProvider = {}
 
 async function runSendFlowTest (assert, done) {
+  const tempFetch = global.fetch
+
+  global.fetch = (...args) => {
+    if (args[0] === 'https://ethgasstation.info/json/ethgasAPI.json') {
+      return Promise.resolve({ json: () => Promise.resolve(JSON.parse(fetchMockResponses.ethGasBasic)) })
+    } else if (args[0] === 'https://ethgasstation.info/json/predictTable.json') {
+      return Promise.resolve({ json: () => Promise.resolve(JSON.parse(fetchMockResponses.ethGasPredictTable)) })
+    } else if (args[0] === 'https://dev.blockscale.net/api/gasexpress.json') {
+      return Promise.resolve({ json: () => Promise.resolve(JSON.parse(fetchMockResponses.gasExpress)) })
+    }
+    return window.fetch(...args)
+  }
+
   console.log('*** start runSendFlowTest')
   const selectState = await queryAsync($, 'select')
   selectState.val('send new ui')
@@ -129,6 +143,8 @@ async function runSendFlowTest (assert, done) {
 
   const cancelButtonInEdit = await queryAsync($, '.btn-default.btn--large.page-container__footer-button')
   cancelButtonInEdit[0].click()
+
+  global.fetch = tempFetch
   // sendButtonInEdit[0].click()
 
   // // TODO: Need a way to mock background so that we can test correct transition from editing to confirm
-- 
cgit