log_file_search_view_test.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. /**
  2. * Licensed to the Apache Software Foundation (ASF) under one
  3. * or more contributor license agreements. See the NOTICE file
  4. * distributed with this work for additional information
  5. * regarding copyright ownership. The ASF licenses this file
  6. * to you under the Apache License, Version 2.0 (the
  7. * "License"); you may not use this file except in compliance
  8. * with the License. You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. */
  18. var App = require('app');
  19. describe('App.LogFileSearchView', function() {
  20. describe('#serializeFilters', function() {
  21. var makeLevelItem = function(level, isChecked) {
  22. return Em.Object.create({
  23. name: level.toUpperCase(),
  24. checked: !!isChecked
  25. });
  26. };
  27. var makeSelectedKeyword = function(keyword, isIncluded) {
  28. return Em.Object.create({
  29. value: keyword,
  30. isIncluded: !!isIncluded
  31. });
  32. };
  33. [
  34. {
  35. viewContent: {
  36. keywordsFilterValue: 'some_keyword'
  37. },
  38. e: 'keywords=some_keyword'
  39. },
  40. {
  41. viewContent: {
  42. keywordsFilterValue: 'some_keyword',
  43. levelsContext: [
  44. makeLevelItem('debug', true),
  45. makeLevelItem('error', false),
  46. makeLevelItem('info', true)
  47. ]
  48. },
  49. e: 'levels=DEBUG,INFO&keywords=some_keyword'
  50. },
  51. {
  52. viewContent: {
  53. keywordsFilterValue: 'some_keyword',
  54. dateFromValue: '12/12/2015',
  55. dateToValue: '14/12/2015',
  56. levelsContext: [
  57. makeLevelItem('debug', true),
  58. makeLevelItem('error', true),
  59. makeLevelItem('info', true)
  60. ]
  61. },
  62. e: 'levels=DEBUG,ERROR,INFO&keywords=some_keyword&dateTo=12/12/2015&dateFrom=12/12/2015'
  63. },
  64. {
  65. viewContent: {
  66. keywordsFilterValue: 'some_keyword',
  67. dateFromValue: '12/12/2015',
  68. levelsContext: [
  69. makeLevelItem('debug', true),
  70. makeLevelItem('error', true),
  71. makeLevelItem('info', true)
  72. ]
  73. },
  74. e: 'levels=DEBUG,ERROR,INFO&keywords=some_keyword&dateFrom=12/12/2015'
  75. },
  76. {
  77. viewContent: {
  78. keywordsFilterValue: 'some_keyword',
  79. dateFromValue: '12/12/2015',
  80. levelsContext: [
  81. makeLevelItem('debug', true),
  82. makeLevelItem('error', true),
  83. makeLevelItem('info', true)
  84. ],
  85. selectedKeywords: [
  86. makeSelectedKeyword("keyword1", true),
  87. makeSelectedKeyword("keyword2", true),
  88. makeSelectedKeyword("keyword3", false)
  89. ]
  90. },
  91. e: 'levels=DEBUG,ERROR,INFO&keywords=some_keyword&dateFrom=12/12/2015&include=keyword1,keyword2&exclude=keyword3'
  92. }
  93. ].forEach(function(test) {
  94. it('validate result: ' + test.e, function() {
  95. var view = App.LogFileSearchView.extend(test.viewContent).create();
  96. expect(view.serializeFilters()).to.be.eql(test.e);
  97. view.destroy();
  98. })
  99. });
  100. });
  101. });