diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-03-13 12:15:42 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-03-13 12:15:42 +0000 |
commit | b4d5fdae4298581813f0bd5fec029da91f9dfe05 (patch) | |
tree | 08b92c331a866b58793db93fbb08a07672de9610 /spec/frontend/super_sidebar | |
parent | e91ff9d11fe29eb0a30e68b95e8c5700986575c8 (diff) | |
download | gitlab-ce-b4d5fdae4298581813f0bd5fec029da91f9dfe05.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'spec/frontend/super_sidebar')
-rw-r--r-- | spec/frontend/super_sidebar/components/context_switcher_toggle_spec.js | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/spec/frontend/super_sidebar/components/context_switcher_toggle_spec.js b/spec/frontend/super_sidebar/components/context_switcher_toggle_spec.js new file mode 100644 index 00000000000..7172b60d0fa --- /dev/null +++ b/spec/frontend/super_sidebar/components/context_switcher_toggle_spec.js @@ -0,0 +1,50 @@ +import { GlAvatar } from '@gitlab/ui'; +import { shallowMountExtended } from 'helpers/vue_test_utils_helper'; +import ContextSwitcherToggle from '~/super_sidebar/components/context_switcher_toggle.vue'; + +describe('ContextSwitcherToggle component', () => { + let wrapper; + + const context = { + id: 1, + title: 'Title', + avatar: '/path/to/avatar.png', + }; + + const findGlAvatar = () => wrapper.getComponent(GlAvatar); + + const createWrapper = (props = {}) => { + wrapper = shallowMountExtended(ContextSwitcherToggle, { + propsData: { + context, + expanded: false, + ...props, + }, + }); + }; + + describe('with an avatar', () => { + it('passes the correct props to GlAvatar', () => { + createWrapper(); + const avatar = findGlAvatar(); + + expect(avatar.props('shape')).toBe('rect'); + expect(avatar.props('entityName')).toBe(context.title); + expect(avatar.props('entityId')).toBe(context.id); + expect(avatar.props('src')).toBe(context.avatar); + }); + + it('renders the avatar with a custom shape', () => { + const customShape = 'circle'; + createWrapper({ + context: { + ...context, + avatar_shape: customShape, + }, + }); + const avatar = findGlAvatar(); + + expect(avatar.props('shape')).toBe(customShape); + }); + }); +}); |