summaryrefslogtreecommitdiff
path: root/spec/frontend/code_navigation
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-07-15 18:09:09 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2020-07-15 18:09:09 +0000
commitda1962d9ac710f95d350d2645c87f5a663123cf2 (patch)
tree1725ade126a9b4ae0148cd100cee94c44f9ce9f3 /spec/frontend/code_navigation
parente69e3f1eb695b4e852c56e7ddf8c52915ae2631b (diff)
downloadgitlab-ce-da1962d9ac710f95d350d2645c87f5a663123cf2.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend/code_navigation')
-rw-r--r--spec/frontend/code_navigation/components/__snapshots__/popover_spec.js.snap112
-rw-r--r--spec/frontend/code_navigation/components/popover_spec.js32
2 files changed, 100 insertions, 44 deletions
diff --git a/spec/frontend/code_navigation/components/__snapshots__/popover_spec.js.snap b/spec/frontend/code_navigation/components/__snapshots__/popover_spec.js.snap
index 65c658536a3..161c2bade05 100644
--- a/spec/frontend/code_navigation/components/__snapshots__/popover_spec.js.snap
+++ b/spec/frontend/code_navigation/components/__snapshots__/popover_spec.js.snap
@@ -10,57 +10,81 @@ exports[`Code navigation popover component renders popover 1`] = `
style="left: 0px;"
/>
- <div
- class="overflow-auto code-navigation-popover-container"
+ <gl-tabs-stub
+ contentclass="gl-py-0"
+ nav-class="gl-hidden"
+ theme="indigo"
>
- <div
- class=""
+ <gl-tab-stub
+ title="Definition"
>
- <pre
- class="border-0 bg-transparent m-0 code highlight text-wrap"
+ <div
+ class="overflow-auto code-navigation-popover-container"
>
- <span
- class="line"
- lang="javascript"
+ <div
+ class=""
>
- <span
- class="k"
+ <pre
+ class="border-0 bg-transparent m-0 code highlight text-wrap"
>
- function
- </span>
- <span>
- main() {
- </span>
- </span>
- <span
- class="line"
- lang="javascript"
+ <span
+ class="line"
+ lang="javascript"
+ >
+ <span
+ class="k"
+ >
+ function
+ </span>
+ <span>
+ main() {
+ </span>
+ </span>
+ <span
+ class="line"
+ lang="javascript"
+ >
+ <span>
+ }
+ </span>
+ </span>
+ </pre>
+ </div>
+ </div>
+
+ <div
+ class="popover-body border-top"
+ >
+ <gl-button-stub
+ category="tertiary"
+ class="w-100"
+ data-testid="go-to-definition-btn"
+ href="http://gitlab.com/test.js"
+ icon=""
+ size="medium"
+ target="_blank"
+ variant="default"
>
- <span>
- }
- </span>
- </span>
- </pre>
- </div>
- </div>
-
- <div
- class="popover-body border-top"
- >
- <gl-button-stub
- category="tertiary"
- class="w-100"
- data-testid="go-to-definition-btn"
- href="http://gitlab.com/test.js"
- icon=""
- size="medium"
- target="_blank"
- variant="default"
+
+ Go to definition
+
+ </gl-button-stub>
+ </div>
+ </gl-tab-stub>
+
+ <gl-tab-stub
+ class="py-2"
+ data-testid="references-tab"
>
+
+ <p
+ class="gl-my-4 gl-px-4"
+ >
+
+ No references found
- Go to definition
-
- </gl-button-stub>
- </div>
+ </p>
+ </gl-tab-stub>
+ </gl-tabs-stub>
</div>
`;
diff --git a/spec/frontend/code_navigation/components/popover_spec.js b/spec/frontend/code_navigation/components/popover_spec.js
index d5a72ab8af8..7b323cfab72 100644
--- a/spec/frontend/code_navigation/components/popover_spec.js
+++ b/spec/frontend/code_navigation/components/popover_spec.js
@@ -40,6 +40,17 @@ const MOCK_DOCS_DATA = Object.freeze({
definition_path: 'test.js#L20',
});
+const MOCK_DATA_WITH_REFERENCES = Object.freeze({
+ hover: [
+ {
+ language: null,
+ value: 'console.log',
+ },
+ ],
+ references: [{ path: 'index.js' }, { path: 'app.js' }],
+ definition_path: 'test.js#L20',
+});
+
let wrapper;
function factory({ position, data, definitionPathPrefix, blobPath = 'index.js' }) {
@@ -64,6 +75,16 @@ describe('Code navigation popover component', () => {
expect(wrapper.element).toMatchSnapshot();
});
+ it('srender references tab with empty text when no references exist', () => {
+ factory({
+ position: { x: 0, y: 0, height: 0 },
+ data: MOCK_CODE_DATA,
+ definitionPathPrefix: DEFINITION_PATH_PREFIX,
+ });
+
+ expect(wrapper.find('[data-testid="references-tab"]').text()).toContain('No references found');
+ });
+
it('renders link with hash to current file', () => {
factory({
position: { x: 0, y: 0, height: 0 },
@@ -75,6 +96,17 @@ describe('Code navigation popover component', () => {
expect(wrapper.find('[data-testid="go-to-definition-btn"]').attributes('href')).toBe('#L20');
});
+ it('renders list of references', () => {
+ factory({
+ position: { x: 0, y: 0, height: 0 },
+ data: MOCK_DATA_WITH_REFERENCES,
+ definitionPathPrefix: DEFINITION_PATH_PREFIX,
+ });
+
+ expect(wrapper.find('[data-testid="references-tab"]').exists()).toBe(true);
+ expect(wrapper.findAll('[data-testid="reference-link"]').length).toBe(2);
+ });
+
describe('code output', () => {
it('renders code output', () => {
factory({