Welcome to mirror list, hosted at ThFree Co, Russian Federation.

serverless_store_spec.js « stores « serverless « javascripts « spec - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 72fd903d7d189a2b2e4e3a141eb49c5517f146db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import ServerlessStore from '~/serverless/stores/serverless_store';
import { mockServerlessFunctions, mockServerlessFunctionsDiffEnv } from '../mock_data';

describe('Serverless Functions Store', () => {
  let store;

  beforeEach(() => {
    store = new ServerlessStore(false, '/cluster_path', 'help_path');
  });

  describe('#updateFunctionsFromServer', () => {
    it('should pass an empty hash object', () => {
      store.updateFunctionsFromServer();

      expect(store.state.functions).toEqual({});
    });

    it('should group functions to one global environment', () => {
      const mockServerlessData = mockServerlessFunctions;
      store.updateFunctionsFromServer(mockServerlessData);

      expect(Object.keys(store.state.functions)).toEqual(jasmine.objectContaining(['*']));
      expect(store.state.functions['*'].length).toEqual(2);
    });

    it('should group functions to multiple environments', () => {
      const mockServerlessData = mockServerlessFunctionsDiffEnv;
      store.updateFunctionsFromServer(mockServerlessData);

      expect(Object.keys(store.state.functions)).toEqual(jasmine.objectContaining(['*']));
      expect(store.state.functions['*'].length).toEqual(1);
      expect(store.state.functions.test.length).toEqual(1);
      expect(store.state.functions.test[0].name).toEqual('testfunc2');
    });
  });
});