blob: 815cc6fd18de3abbd29343f509ece06a029de055 [file] [log] [blame]
var test = require('tape');
var results = require('../browser/components/results');
var raf = require('raf');
var event = require('synthetic-dom-events');
var document = require('global/document');
var hg = require('mercury');
test('results state', function(t) {
var state = results();
t.equal(state.open(), false);
t.deepEqual(state.logs(), []);
t.end();
});
// TODO(jasoncampbell): Refactor all the boilerplate here into some simple test
// helpers and assertion wrappers.
test('toggle open', function(t) {
var div = document.createElement('div');
document.body.appendChild(div);
var state = results();
var remove = hg.app(div, state, results.render);
var toggle = document.getElementsByClassName('toggle-display')[0];
t.equal(state.open(), false);
toggle.dispatchEvent(event('click'));
raf(function(){
var results = document.getElementsByClassName('results')[0];
t.equal(state.open(), true);
t.ok(results.className.match('opened'), 'should have opened class');
// NOTE: maybe reset state here?
document.body.removeChild(div);
remove();
t.end();
});
});