2018-11-02 11:02:53 -07:00
|
|
|
/* global Whisper */
|
|
|
|
|
|
|
|
describe('ScrollDownButtonView', () => {
|
|
|
|
it('renders with count = 0', () => {
|
|
|
|
const view = new Whisper.ScrollDownButtonView();
|
2018-04-27 17:25:04 -04:00
|
|
|
view.render();
|
|
|
|
assert.equal(view.count, 0);
|
|
|
|
assert.match(view.$el.html(), /Scroll to bottom/);
|
|
|
|
});
|
2017-05-18 18:33:35 -07:00
|
|
|
|
2018-11-02 11:02:53 -07:00
|
|
|
it('renders with count = 1', () => {
|
|
|
|
const view = new Whisper.ScrollDownButtonView({ count: 1 });
|
2018-04-27 17:25:04 -04:00
|
|
|
view.render();
|
|
|
|
assert.equal(view.count, 1);
|
|
|
|
assert.match(view.$el.html(), /New message below/);
|
|
|
|
});
|
2017-05-18 18:33:35 -07:00
|
|
|
|
2018-11-02 11:02:53 -07:00
|
|
|
it('renders with count = 2', () => {
|
|
|
|
const view = new Whisper.ScrollDownButtonView({ count: 2 });
|
2018-04-27 17:25:04 -04:00
|
|
|
view.render();
|
|
|
|
assert.equal(view.count, 2);
|
2017-05-18 18:33:35 -07:00
|
|
|
|
2018-04-27 17:25:04 -04:00
|
|
|
assert.match(view.$el.html(), /New messages below/);
|
|
|
|
});
|
2017-05-18 18:33:35 -07:00
|
|
|
|
2018-11-02 11:02:53 -07:00
|
|
|
it('increments count and re-renders', () => {
|
|
|
|
const view = new Whisper.ScrollDownButtonView();
|
2018-04-27 17:25:04 -04:00
|
|
|
view.render();
|
|
|
|
assert.equal(view.count, 0);
|
2018-07-09 14:29:13 -07:00
|
|
|
assert.notMatch(view.$el.html(), /New message below/);
|
2018-04-27 17:25:04 -04:00
|
|
|
view.increment(1);
|
|
|
|
assert.equal(view.count, 1);
|
2018-07-09 14:29:13 -07:00
|
|
|
assert.match(view.$el.html(), /New message below/);
|
2018-04-27 17:25:04 -04:00
|
|
|
});
|
2017-05-18 18:33:35 -07:00
|
|
|
});
|