diff options
author | kushalpandya <kushal@gitlab.com> | 2017-09-04 21:56:37 +0530 |
---|---|---|
committer | kushalpandya <kushal@gitlab.com> | 2017-09-05 13:11:21 +0530 |
commit | b4ffaf9eacfa80ee30ccfd9900b603578188783b (patch) | |
tree | 1fabdb30ff4eb14474458bc4074bec17c65b8d3e | |
parent | 3fcc7460f0e4c833f2075ad943e3bd46033afa3a (diff) | |
download | gitlab-ce-b4ffaf9eacfa80ee30ccfd9900b603578188783b.tar.gz |
Projects Dropdown App Store Spec
-rw-r--r-- | spec/javascripts/projects_dropdown/store/projects_store_spec.js | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/spec/javascripts/projects_dropdown/store/projects_store_spec.js b/spec/javascripts/projects_dropdown/store/projects_store_spec.js new file mode 100644 index 00000000000..e57399d37cd --- /dev/null +++ b/spec/javascripts/projects_dropdown/store/projects_store_spec.js @@ -0,0 +1,41 @@ +import ProjectsStore from '~/projects_dropdown/store/projects_store'; +import { mockProject, mockRawProject } from '../mock_data'; + +describe('ProjectsStore', () => { + let store; + + beforeEach(() => { + store = new ProjectsStore(); + }); + + describe('setFrequentProjects', () => { + it('should set frequent projects list to state', () => { + store.setFrequentProjects([mockProject]); + + expect(store.getFrequentProjects().length).toBe(1); + expect(store.getFrequentProjects()[0].id).toBe(mockProject.id); + }); + }); + + describe('setSearchedProjects', () => { + it('should set searched projects list to state', () => { + store.setSearchedProjects([mockRawProject]); + + const processedProjects = store.getSearchedProjects(); + expect(processedProjects.length).toBe(1); + expect(processedProjects[0].id).toBe(mockRawProject.id); + expect(processedProjects[0].namespace).toBe(mockRawProject.name_with_namespace); + expect(processedProjects[0].webUrl).toBe(mockRawProject.web_url); + expect(processedProjects[0].avatarUrl).toBe(mockRawProject.avatar_url); + }); + }); + + describe('clearSearchedProjects', () => { + it('should clear searched projects list from state', () => { + store.setSearchedProjects([mockRawProject]); + expect(store.getSearchedProjects().length).toBe(1); + store.clearSearchedProjects(); + expect(store.getSearchedProjects().length).toBe(0); + }); + }); +}); |