]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-11150 Display all results when searching in projects page language facet
authorGrégoire Aubert <gregoire.aubert@sonarsource.com>
Mon, 13 Aug 2018 14:26:11 +0000 (16:26 +0200)
committerSonarTech <sonartech@sonarsource.com>
Thu, 16 Aug 2018 18:20:52 +0000 (20:20 +0200)
server/sonar-web/src/main/js/apps/projects/filters/LanguagesFilter.tsx
server/sonar-web/src/main/js/apps/projects/filters/SearchableFilterFooter.tsx
server/sonar-web/src/main/js/apps/projects/filters/__tests__/LanguagesFilter-test.tsx
server/sonar-web/src/main/js/apps/projects/filters/__tests__/__snapshots__/LanguagesFilter-test.tsx.snap

index 2481e0b69864ecbfa2d3f9cac26f7d4741d6c7b9..ada03f39f0aec34117d442d915e43e5591f44465 100644 (file)
@@ -36,20 +36,17 @@ interface Props {
   organization?: { key: string };
   property?: string;
   query: { [x: string]: any };
-  value?: Array<string>;
+  value?: string[];
 }
 
-const LIST_SIZE = 10;
-
 export default class LanguagesFilter extends React.Component<Props> {
   getSearchOptions = () => {
-    let languageKeys = Object.keys(this.props.languages);
-    if (this.props.facet) {
-      languageKeys = difference(languageKeys, Object.keys(this.props.facet));
+    const { facet, languages } = this.props;
+    let languageKeys = Object.keys(languages);
+    if (facet) {
+      languageKeys = difference(languageKeys, Object.keys(facet));
     }
-    return languageKeys
-      .slice(0, LIST_SIZE)
-      .map(key => ({ label: this.props.languages[key].name, value: key }));
+    return languageKeys.map(key => ({ label: languages[key].name, value: key }));
   };
 
   getSortedOptions = (facet: Facet = {}) =>
index 952aabbe5e85e3cc217eb089755daf099d70956c..3ec19461c4279126d70f0ac55d73d7d9280a8a31 100644 (file)
@@ -23,15 +23,15 @@ import { translate } from '../../../helpers/l10n';
 import { RawQuery } from '../../../helpers/query';
 
 interface Props {
-  onQueryChange: (change: RawQuery) => void;
-  property: string;
-  query: { [x: string]: any };
-  options: Array<{ label: string; value: string }>;
+  isFavorite?: boolean;
+  isLoading?: boolean;
   onInputChange?: (query: string) => void;
   onOpen?: () => void;
-  isLoading?: boolean;
-  isFavorite?: boolean;
+  onQueryChange: (change: RawQuery) => void;
+  options: Array<{ label: string; value: string }>;
   organization?: { key: string };
+  property: string;
+  query: { [x: string]: any };
 }
 
 export default class SearchableFilterFooter extends React.PureComponent<Props> {
index 6a9d33acb95922dd23ab706014809aa2a22a09d1..5ca361d02d75cbf4beb4ccaa3ff9b096ee75d756 100644 (file)
@@ -57,28 +57,3 @@ it('should render the languages facet with the selected languages', () => {
   expect(wrapper).toMatchSnapshot();
   expect(wrapper.find('Filter').shallow()).toMatchSnapshot();
 });
-
-it('should render maximum 10 languages in the searchbox results', () => {
-  const manyLanguages = {
-    ...languages,
-    c: { key: 'c', name: 'c' },
-    d: { key: 'd', name: 'd' },
-    e: { key: 'e', name: 'e' },
-    f: { key: 'f', name: 'f' },
-    g: { key: 'g', name: 'g' },
-    h: { key: 'h', name: 'h' },
-    i: { key: 'i', name: 'i' },
-    k: { key: 'k', name: 'k' },
-    l: { key: 'l', name: 'l' }
-  };
-  const wrapper = shallow(
-    <LanguagesFilter
-      facet={{ ...languagesFacet, g: 1 }}
-      languages={manyLanguages}
-      onQueryChange={jest.fn()}
-      query={{ languages: ['java', 'g'] }}
-      value={['java', 'g']}
-    />
-  );
-  expect(wrapper).toMatchSnapshot();
-});
index 2ee2995300eeedb2f50edad92ddf0157b57ce3b6..1f40db190ca7da3bdec457a054c8470eb3266b78 100644 (file)
@@ -1,107 +1,5 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
-exports[`should render maximum 10 languages in the searchbox results 1`] = `
-<Filter
-  facet={
-    Object {
-      "cs": 4,
-      "g": 1,
-      "java": 39,
-      "js": 1,
-    }
-  }
-  footer={
-    <SearchableFilterFooter
-      onQueryChange={[MockFunction]}
-      options={
-        Array [
-          Object {
-            "label": "Flex",
-            "value": "flex",
-          },
-          Object {
-            "label": "PHP",
-            "value": "php",
-          },
-          Object {
-            "label": "Python",
-            "value": "py",
-          },
-          Object {
-            "label": "c",
-            "value": "c",
-          },
-          Object {
-            "label": "d",
-            "value": "d",
-          },
-          Object {
-            "label": "e",
-            "value": "e",
-          },
-          Object {
-            "label": "f",
-            "value": "f",
-          },
-          Object {
-            "label": "h",
-            "value": "h",
-          },
-          Object {
-            "label": "i",
-            "value": "i",
-          },
-          Object {
-            "label": "k",
-            "value": "k",
-          },
-        ]
-      }
-      property="languages"
-      query={
-        Object {
-          "languages": Array [
-            "java",
-            "g",
-          ],
-        }
-      }
-    />
-  }
-  getFacetValueForOption={[Function]}
-  header={
-    <FilterHeader
-      name="projects.facets.languages"
-    />
-  }
-  onQueryChange={[MockFunction]}
-  options={
-    Array [
-      "java",
-      "cs",
-      "g",
-      "js",
-    ]
-  }
-  property="languages"
-  query={
-    Object {
-      "languages": Array [
-        "java",
-        "g",
-      ],
-    }
-  }
-  renderOption={[Function]}
-  value={
-    Array [
-      "java",
-      "g",
-    ]
-  }
-/>
-`;
-
 exports[`should render the languages facet with the selected languages 1`] = `
 <Filter
   facet={