UNPKG

@spotinst/spinnaker-deck

Version:

Spinnaker-Deck service, forked with support to Spotinst

60 lines (54 loc) 2.02 kB
'use strict'; describe('gceServerGroupTransformer', () => { let transformer, $q, $scope; beforeEach(window.module(require('./serverGroup.transformer').name)); beforeEach(() => { window.inject((_$q_, $rootScope, _gceServerGroupTransformer_) => { $q = _$q_; $scope = $rootScope.$new(); transformer = _gceServerGroupTransformer_; }); }); describe('normalize server group load balancers', () => { let app; beforeEach(() => { app = { getDataSource: () => { return { ready: () => $q.resolve(), data: [ { name: 'network-load-balancer', account: 'my-google-account' }, { name: 'internal-load-balancer', account: 'my-google-account' }, { name: 'url-map-name', provider: 'gce', account: 'my-google-account', region: 'global', loadBalancerType: 'HTTP', listeners: [{ name: 'http-load-balancer-listener' }, { name: 'https-load-balancer-listener' }], }, ], }; }, }; }); it('should map listener names to url map names', function () { const serverGroup = { account: 'my-google-account', loadBalancers: [ 'network-load-balancer', 'internal-load-balancer', 'http-load-balancer-listener', 'https-load-balancer-listener', ], }; let normalizedServerGroup; transformer.normalizeServerGroup(serverGroup, app).then((normalized) => (normalizedServerGroup = normalized)); $scope.$digest(); expect(normalizedServerGroup.loadBalancers.length).toBe(3); expect(normalizedServerGroup.loadBalancers.includes('url-map-name')).toEqual(true); expect(normalizedServerGroup.loadBalancers.includes('network-load-balancer')).toEqual(true); expect(normalizedServerGroup.loadBalancers.includes('internal-load-balancer')).toEqual(true); }); }); });