當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript serverGroup.IUpsertAlarmDescription類代碼示例

本文整理匯總了TypeScript中amazon/serverGroup.IUpsertAlarmDescription的典型用法代碼示例。如果您正苦於以下問題:TypeScript IUpsertAlarmDescription類的具體用法?TypeScript IUpsertAlarmDescription怎麽用?TypeScript IUpsertAlarmDescription使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了IUpsertAlarmDescription類的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: 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

示例3: it

    it('sets advanced mode when metrics fail to load', () => {
      alarm = makeAlarm('AWS/EC2', 'CPUUtilization', 'GreaterThanThreshold', [
        {
          name: 'AutoScalingGroupName',
          value: 'asg-v000',
        },
      ]);
      serverGroup = makeServerGroup('asg-v000');

      initialize();
      spyOn(CloudMetricsReader, 'listMetrics').and.returnValue($q.reject(null));

      $ctrl.$onInit();
      $scope.$digest();

      expect($ctrl.state.metricsLoaded).toBe(true);
      expect($ctrl.state.advancedMode).toBe(true);
    });
開發者ID:mizzy,項目名稱:deck,代碼行數:18,代碼來源:metricSelector.component.spec.ts


注:本文中的amazon/serverGroup.IUpsertAlarmDescription類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。