snackbar.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. import assert from 'assert';
  2. import React from 'react'; // jshint ignore:line
  3. import { Snackbar } from 'misago/components/snackbar'; // jshint ignore:line
  4. import * as testUtils from 'misago/utils/test-utils';
  5. describe("Snackbar", function() {
  6. afterEach(function() {
  7. testUtils.unmountComponents();
  8. });
  9. it('renders', function() {
  10. /* jshint ignore:start */
  11. testUtils.render(<Snackbar isVisible={false} message="" type="info" />);
  12. /* jshint ignore:end */
  13. assert.ok($('.alerts-snackbar').hasClass('out'), "component is hidden");
  14. /* jshint ignore:start */
  15. testUtils.render(
  16. <Snackbar isVisible={true} type="success"
  17. message="Lorem ipsum dolor met." />
  18. );
  19. /* jshint ignore:end */
  20. assert.ok($('.alerts-snackbar').hasClass('in'), "component is visible");
  21. assert.ok($('.alerts-snackbar p').hasClass('alert-success'),
  22. "component has alert-success class");
  23. assert.equal(
  24. $.trim($('.alerts-snackbar p').text()), "Lorem ipsum dolor met.",
  25. "message is inserted");
  26. /* jshint ignore:start */
  27. testUtils.render(
  28. <Snackbar isVisible={true} type="info"
  29. message="Lorem ipsum dolor met." />
  30. );
  31. /* jshint ignore:end */
  32. assert.ok($('.alerts-snackbar p').hasClass('alert-info'),
  33. "component has alert-info class");
  34. /* jshint ignore:start */
  35. testUtils.render(
  36. <Snackbar isVisible={true} type="warning"
  37. message="Lorem ipsum dolor met." />
  38. );
  39. /* jshint ignore:end */
  40. assert.ok($('.alerts-snackbar p').hasClass('alert-warning'),
  41. "component has alert-warning class");
  42. /* jshint ignore:start */
  43. testUtils.render(
  44. <Snackbar isVisible={true} type="error"
  45. message="Lorem ipsum dolor met." />
  46. );
  47. /* jshint ignore:end */
  48. assert.ok($('.alerts-snackbar p').hasClass('alert-danger'),
  49. "component has alert-danger class");
  50. });
  51. });