snackbar.js 980 B

1234567891011121314151617181920212223242526272829303132
  1. import assert from 'assert';
  2. import { StoreWrapper } from 'misago/services/store';
  3. import reducer, { initialState, showSnackbar, hideSnackbar } from 'misago/reducers/snackbar';
  4. let store = null;
  5. describe("Snackbar", function() {
  6. beforeEach(function() {
  7. store = new StoreWrapper();
  8. store.addReducer('snackbar', reducer, initialState);
  9. store.init();
  10. });
  11. it("showSnackbar action sets new message", function() {
  12. store.dispatch(showSnackbar("Lorem ipsum dolor met.", 'success'));
  13. let state = store.getState().snackbar;
  14. assert.deepEqual(state, {
  15. type: 'success',
  16. message: "Lorem ipsum dolor met.",
  17. isVisible: true
  18. }, "message was set on state");
  19. });
  20. it("hideSnackbar action hides message", function() {
  21. store.dispatch(showSnackbar("Lorem ipsum dolor met.", 'success'));
  22. store.dispatch(hideSnackbar());
  23. let state = store.getState().snackbar;
  24. assert.ok(!state.isVisible, "visible flag was removed");
  25. });
  26. });