diff --git a/app/components/confirmed-in/component.js b/app/components/confirmed-in/component.js index 1d7a1c7..e14c639 100644 --- a/app/components/confirmed-in/component.js +++ b/app/components/confirmed-in/component.js @@ -1,6 +1,7 @@ import Component from '@glimmer/component'; import { tracked } from '@glimmer/tracking'; import { inject as service } from '@ember/service'; +import moment from 'moment'; export default class ConfirmedInComponent extends Component { @service kredits; @@ -20,4 +21,10 @@ export default class ConfirmedInComponent extends Component { // A new block is mined every 30 seconds on average return this.confirmedInBlocks * 30; } + + get confirmedInHumanTime () { + console.debug(this.confirmedInBlocks); + console.debug(this.confirmedInSeconds); + return moment.duration(this.confirmedInSeconds, "seconds").humanize(); + } } diff --git a/tests/unit/components/confirmed-in-test.js b/tests/unit/components/confirmed-in-test.js new file mode 100644 index 0000000..7f9d796 --- /dev/null +++ b/tests/unit/components/confirmed-in-test.js @@ -0,0 +1,40 @@ +import { module, test } from 'qunit'; +import { setupTest } from 'ember-qunit'; +import createComponent from 'kredits-web/tests/helpers/create-component'; +// import moment from 'moment'; + +module('Unit | Component | confirmed-in', function(hooks) { + setupTest(hooks); + + test('it exists', function(assert) { + let component = createComponent('component:confirmed-in'); + assert.ok(component); + }); + + test('#confirmedInBlocks', function(assert) { + const kredits = this.owner.lookup('service:kredits'); + kredits.set('currentBlock', 419550); + let component = createComponent('component:confirmed-in'); + component.confirmedAtBlock = 420000; + + assert.equal(component.confirmedInBlocks, 450); + }) + + test('#confirmedInSeconds', function(assert) { + const kredits = this.owner.lookup('service:kredits'); + kredits.set('currentBlock', 419550); + let component = createComponent('component:confirmed-in'); + component.confirmedAtBlock = 420000; + + assert.equal(component.confirmedInSeconds, 13500); + }) + + test('#confirmedInHumanTime', function(assert) { + const kredits = this.owner.lookup('service:kredits'); + kredits.set('currentBlock', 419550); + let component = createComponent('component:confirmed-in'); + component.confirmedAtBlock = 420000; + + assert.equal(component.confirmedInHumanTime, '4 hours'); + }) +});