当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript core.IServerGroup类代码示例

本文整理汇总了TypeScript中@spinnaker/core.IServerGroup的典型用法代码示例。如果您正苦于以下问题:TypeScript IServerGroup类的具体用法?TypeScript IServerGroup怎么用?TypeScript IServerGroup使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了IServerGroup类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: describe

describe('Component: metric selector', () => {
  let $ctrl: MetricSelectorController;
  let $componentController: IComponentControllerService;
  let $q: IQService;
  let $scope: IScope;
  const alarmUpdated = new Subject<void>();

  let alarm: IUpsertAlarmDescription;
  let serverGroup: IServerGroup;

  beforeEach(mock.module(METRIC_SELECTOR_COMPONENT));

  beforeEach(
    mock.inject(
      (_$componentController_: IComponentControllerService, _$q_: IQService, $rootScope: IRootScopeService) => {
        $componentController = _$componentController_;
        $q = _$q_;
        $scope = $rootScope.$new();
      },
    ),
  );

  const initialize = () => {
    $ctrl = $componentController(
      'awsMetricSelector',
      { $scope },
      { alarm, serverGroup, alarmUpdated },
    ) as MetricSelectorController;
    $ctrl.$onInit();
  };

  const makeServerGroup = (name: string): IServerGroup => {
    return {
      name,
      account: 'test',
      cloudProvider: 'aws',
      cluster: undefined,
      region: 'us-east-1',
      type: undefined,
      instanceCounts: undefined,
      instances: undefined,
    };
  };

  const makeAlarm = (
    namespace: string,
    metricName: string,
    comparisonOperator: AlarmComparisonOperator,
    dimensions: IMetricAlarmDimension[],
  ): IUpsertAlarmDescription => {
    return {
      asgName: undefined,
      name: undefined,
      region: undefined,
      alarmDescription: undefined,
      evaluationPeriods: undefined,
      period: undefined,
      threshold: undefined,
      statistic: undefined,
      unit: undefined,
      alarmActionArns: undefined,
      insufficientDataActionArns: undefined,
      okActionArns: undefined,
      comparisonOperator,
      dimensions,
      metricName,
      namespace,
    };
  };

  describe('initialization', () => {
    beforeEach(() => {
      alarm = makeAlarm('AWS/EC2', 'CPUUtilization', 'GreaterThanThreshold', [
        {
          name: 'AutoScalingGroupName',
          value: 'asg-v000',
        },
      ]);
    });

    it('sets advanced mode when dimensions are non-standard', () => {
      serverGroup = makeServerGroup('asg-v000');
      initialize();
      expect($ctrl.state.advancedMode).toBe(false);

      serverGroup = makeServerGroup('other-v001');
      initialize();
      $ctrl.$onInit();
      expect($ctrl.state.advancedMode).toBe(true);
    });

    it('updates available metrics on initialization, triggers alarmUpdated once', () => {
      spyOn(CloudMetricsReader, 'listMetrics').and.returnValue(
        $q.when([
          {
            namespace: 'AWS/EC2',
            name: 'CPUUtilization',
            dimensions: [{ name: 'AutoScalingGroupName', value: 'asg-v000' }],
          },
          {
//.........这里部分代码省略.........
开发者ID:mizzy,项目名称:deck,代码行数:101,代码来源:metricSelector.component.spec.ts

示例2: it

    it('sets advanced mode when dimensions are non-standard', () => {
      serverGroup = makeServerGroup('asg-v000');
      initialize();
      expect($ctrl.state.advancedMode).toBe(false);

      serverGroup = makeServerGroup('other-v001');
      initialize();
      $ctrl.$onInit();
      expect($ctrl.state.advancedMode).toBe(true);
    });
开发者ID:mizzy,项目名称:deck,代码行数:10,代码来源:metricSelector.component.spec.ts

示例3: beforeEach

 beforeEach(() => {
   alarm = makeAlarm('AWS/EC2', 'CPUUtilization', 'GreaterThanThreshold', [
     { name: 'AutoScalingGroupName', value: 'asg-v000' },
   ]);
   serverGroup = makeServerGroup('asg-v000');
   spyOn(CloudMetricsReader, 'listMetrics').and.returnValue(
     $q.when([
       {
         namespace: 'AWS/EC2',
         name: 'CPUUtilization',
         dimensions: [{ name: 'AutoScalingGroupName', value: 'asg-v000' }],
       },
       {
         namespace: 'AWS/EC2',
         name: 'NetworkIn',
         dimensions: [{ name: 'AutoScalingGroupName', value: 'asg-v000' }, { name: 'sr', value: '71' }],
       },
       {
         namespace: 'AWS/EBS',
         name: 'somethingElse',
         dimensions: [],
       },
     ]),
   );
   initialize();
   $scope.$digest();
 });
开发者ID:mizzy,项目名称:deck,代码行数:27,代码来源:metricSelector.component.spec.ts


注:本文中的@spinnaker/core.IServerGroup类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。