empty.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import assert from 'assert';
  2. import React from 'react'; // jshint ignore:line
  3. import ListEmpty from 'misago/components/threads-list/list/empty'; // jshint ignore:line
  4. import * as testUtils from 'misago/utils/test-utils';
  5. describe("Empty Threads List", function() {
  6. afterEach(function() {
  7. testUtils.unmountComponents();
  8. });
  9. it("renders", function(done) {
  10. /* jshint ignore:start */
  11. testUtils.render(
  12. <ListEmpty diffSize={0}>
  13. <p>Well, this is empty list message!</p>
  14. </ListEmpty>
  15. );
  16. /* jshint ignore:end */
  17. testUtils.onElement('#test-mount .threads-list p', function(element) {
  18. assert.ok(true, "component renders");
  19. assert.equal($(element).text(), "Well, this is empty list message!",
  20. "empty list renders its child content as empty message");
  21. assert.ok(!$(element).find('.threads-diff-message').length,
  22. "message about new threads is hidden");
  23. done();
  24. });
  25. });
  26. it("renders with diff message", function(done) { // jshint ignore:line
  27. /* jshint ignore:start */
  28. const applyDiff = function() {
  29. assert.ok(true, "apply diff message runs callback");
  30. done();
  31. };
  32. testUtils.render(
  33. <ListEmpty applyDiff={applyDiff} diffSize={1}>
  34. <p>Well, this is empty list message!</p>
  35. </ListEmpty>
  36. );
  37. /* jshint ignore:end */
  38. testUtils.onElement('#test-mount .threads-list .btn', function(element) {
  39. assert.ok(true, "component renders");
  40. assert.equal($(element).find('.diff-message').text(),
  41. "There is 1 new or updated thread. Click this message to show it.",
  42. "message about new threads is displayed");
  43. testUtils.simulateClick('.btn');
  44. });
  45. });
  46. });