mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-23 09:52:26 +01:00
Implement usage of nock.
This commit is contained in:
parent
e42b35398b
commit
c82a494b4b
@ -288,29 +288,19 @@ ConfigManager.prototype.getCurrentFiat = function () {
|
||||
return ('fiatCurrency' in data) && data.fiatCurrency
|
||||
}
|
||||
|
||||
ConfigManager.prototype.updateConversionRate = function (mock = false, mockCurrency = 'USD') {
|
||||
ConfigManager.prototype.updateConversionRate = function () {
|
||||
var data = this.getData()
|
||||
if (!mock) {
|
||||
return rp(`https://www.cryptonator.com/api/ticker/eth-${data.fiatCurrency}`)
|
||||
.then((response) => {
|
||||
const parsedResponse = JSON.parse(response)
|
||||
this.setConversionPrice(parsedResponse.ticker.price)
|
||||
this.setConversionDate(parsedResponse.timestamp)
|
||||
}).catch((err) => {
|
||||
console.error('Error in conversion.', err)
|
||||
this.setConversionPrice(0)
|
||||
this.setConversionDate('N/A')
|
||||
})
|
||||
} else {
|
||||
return new Promise(function(resolve, reject) { resolve() }).then((response) => {
|
||||
this.setConversionPrice('11.01')
|
||||
this.setConversionDate(1472065924)
|
||||
}).catch((err) => {
|
||||
console.error('Error in conversion.', err)
|
||||
this.setConversionPrice('11.01')
|
||||
this.setConversionDate(1472065924)
|
||||
})
|
||||
}
|
||||
return rp(`https://www.cryptonator.com/api/ticker/eth-${data.fiatCurrency}`)
|
||||
.then((response) => {
|
||||
const parsedResponse = JSON.parse(response)
|
||||
this.setConversionPrice(parsedResponse.ticker.price)
|
||||
this.setConversionDate(parsedResponse.timestamp)
|
||||
}).catch((err) => {
|
||||
console.error('Error in conversion.', err)
|
||||
this.setConversionPrice(0)
|
||||
this.setConversionDate('N/A')
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
ConfigManager.prototype.setConversionPrice = function (price) {
|
||||
|
@ -108,6 +108,7 @@
|
||||
"mocha-eslint": "^2.1.1",
|
||||
"mocha-jsdom": "^1.1.0",
|
||||
"mocha-sinon": "^1.1.5",
|
||||
"nock": "^8.0.0",
|
||||
"qs": "^6.2.0",
|
||||
"qunit": "^0.9.1",
|
||||
"sinon": "^1.17.3",
|
||||
|
@ -4,6 +4,7 @@ const STORAGE_KEY = 'metamask-persistance-key'
|
||||
var configManagerGen = require('../lib/mock-config-manager')
|
||||
var configManager
|
||||
const rp = require('request-promise')
|
||||
const nock = require('nock')
|
||||
|
||||
describe('config-manager', function() {
|
||||
|
||||
@ -47,12 +48,15 @@ describe('config-manager', function() {
|
||||
describe('#updateConversionRate', function() {
|
||||
it('should retrieve an update for ETH to USD and set it in memory', function(done) {
|
||||
this.timeout(15000)
|
||||
var usdMock = nock('https://www.cryptonator.com')
|
||||
.get('/api/ticker/eth-USD')
|
||||
.reply(200, '{"ticker":{"base":"ETH","target":"USD","price":"11.02456145","volume":"44948.91745289","change":"-0.01472534"},"timestamp":1472072136,"success":true,"error":""}')
|
||||
|
||||
assert.equal(configManager.getConversionRate(), false)
|
||||
var promise = new Promise(
|
||||
function (resolve, reject) {
|
||||
configManager.setCurrentFiat('USD')
|
||||
configManager.updateConversionRate(true, 'USD').then(function() {
|
||||
configManager.updateConversionRate().then(function() {
|
||||
resolve()
|
||||
})
|
||||
})
|
||||
@ -71,10 +75,15 @@ describe('config-manager', function() {
|
||||
this.timeout(15000)
|
||||
assert.equal(configManager.getConversionRate(), false)
|
||||
|
||||
var usdMock = nock('https://www.cryptonator.com')
|
||||
.get('/api/ticker/eth-JPY')
|
||||
.reply(200, '{"ticker":{"base":"ETH","target":"JPY","price":"11.02456145","volume":"44948.91745289","change":"-0.01472534"},"timestamp":1472072136,"success":true,"error":""}')
|
||||
|
||||
|
||||
var promise = new Promise(
|
||||
function (resolve, reject) {
|
||||
configManager.setCurrentFiat('JPY')
|
||||
configManager.updateConversionRate(true, 'JPY').then(function() {
|
||||
configManager.updateConversionRate().then(function() {
|
||||
resolve()
|
||||
})
|
||||
})
|
||||
|
Loading…
Reference in New Issue
Block a user