update-post.test.js 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. import UpdatePost from '../../../src/server/models/update-post';
  2. describe('UpdatePost', () => {
  3. describe('.createPrefixesByPathPattern', () => {
  4. describe('with a path', () => {
  5. test('should return right patternPrfixes', () => {
  6. expect(UpdatePost.createPrefixesByPathPattern('/*')).toEqual([
  7. '*',
  8. '*',
  9. ]);
  10. expect(UpdatePost.createPrefixesByPathPattern('/user/*/日報*')).toEqual(
  11. ['user', '*'],
  12. );
  13. expect(
  14. UpdatePost.createPrefixesByPathPattern('/project/hoge/*'),
  15. ).toEqual(['project', 'hoge']);
  16. expect(UpdatePost.createPrefixesByPathPattern('/*/MTG/*')).toEqual([
  17. '*',
  18. 'MTG',
  19. ]);
  20. expect(UpdatePost.createPrefixesByPathPattern('自己紹介')).toEqual([
  21. '*',
  22. '*',
  23. ]);
  24. expect(
  25. UpdatePost.createPrefixesByPathPattern(
  26. '/user/aoi/メモ/2016/02/10/xxx',
  27. ),
  28. ).toEqual(['user', 'aoi']);
  29. });
  30. });
  31. });
  32. describe('.getRegExpByPattern', () => {
  33. describe('with a pattern', () => {
  34. test('should return right regexp', () => {
  35. expect(UpdatePost.getRegExpByPattern('/*')).toEqual(/^\/.*/);
  36. expect(UpdatePost.getRegExpByPattern('/user/*/日報*')).toEqual(
  37. /^\/user\/.*\/日報.*/,
  38. );
  39. expect(UpdatePost.getRegExpByPattern('/project/hoge/*')).toEqual(
  40. /^\/project\/hoge\/.*/,
  41. );
  42. expect(UpdatePost.getRegExpByPattern('/*/MTG/*')).toEqual(
  43. /^\/.*\/MTG\/.*/,
  44. );
  45. expect(UpdatePost.getRegExpByPattern('自己紹介')).toEqual(
  46. /^\/.*自己紹介.*/,
  47. );
  48. expect(
  49. UpdatePost.getRegExpByPattern('/user/aoi/メモ/2016/02/10/xxx'),
  50. ).toEqual(/^\/user\/aoi\/メモ\/2016\/02\/10\/xxx/);
  51. });
  52. });
  53. });
  54. describe('.normalizeChannelName', () => {
  55. describe('with a channel name', () => {
  56. test('should return true', () => {
  57. expect(UpdatePost.normalizeChannelName('#pj-hoge')).toEqual('pj-hoge');
  58. expect(UpdatePost.normalizeChannelName('pj-hoge')).toEqual('pj-hoge');
  59. });
  60. });
  61. });
  62. });