github.com/hernad/nomad@v1.6.112/ui/tests/pages/jobs/list.js (about)

     1  /**
     2   * Copyright (c) HashiCorp, Inc.
     3   * SPDX-License-Identifier: MPL-2.0
     4   */
     5  
     6  import {
     7    attribute,
     8    create,
     9    collection,
    10    clickable,
    11    isPresent,
    12    property,
    13    text,
    14    triggerable,
    15    visitable,
    16  } from 'ember-cli-page-object';
    17  
    18  import { multiFacet, singleFacet } from 'nomad-ui/tests/pages/components/facet';
    19  import pageSizeSelect from 'nomad-ui/tests/pages/components/page-size-select';
    20  
    21  export default create({
    22    pageSize: 25,
    23  
    24    visit: visitable('/jobs'),
    25  
    26    search: {
    27      scope: '[data-test-jobs-search] input',
    28      keydown: triggerable('keydown'),
    29    },
    30  
    31    runJobButton: {
    32      scope: '[data-test-run-job]',
    33      isDisabled: property('disabled'),
    34    },
    35  
    36    jobs: collection('[data-test-job-row]', {
    37      id: attribute('data-test-job-row'),
    38      name: text('[data-test-job-name]'),
    39      link: attribute('href', '[data-test-job-name] a'),
    40      namespace: text('[data-test-job-namespace]'),
    41      nodePool: text('[data-test-job-node-pool]'),
    42      status: text('[data-test-job-status]'),
    43      type: text('[data-test-job-type]'),
    44      priority: text('[data-test-job-priority]'),
    45      taskGroups: text('[data-test-job-task-groups]'),
    46  
    47      hasNamespace: isPresent('[data-test-job-namespace]'),
    48      clickRow: clickable(),
    49      clickName: clickable('[data-test-job-name] a'),
    50    }),
    51  
    52    nextPage: clickable('[data-test-pager="next"]'),
    53    prevPage: clickable('[data-test-pager="prev"]'),
    54  
    55    isEmpty: isPresent('[data-test-empty-jobs-list]'),
    56    emptyState: {
    57      headline: text('[data-test-empty-jobs-list-headline]'),
    58    },
    59  
    60    error: {
    61      isPresent: isPresent('[data-test-error]'),
    62      title: text('[data-test-error-title]'),
    63      message: text('[data-test-error-message]'),
    64      seekHelp: clickable('[data-test-error-message] a'),
    65      gotoJobs: clickable('[data-test-error-jobs-link]'),
    66      gotoClients: clickable('[data-test-error-clients-link]'),
    67      gotoSignin: clickable('[data-test-error-signin-link]'),
    68    },
    69  
    70    pageSizeSelect: pageSizeSelect(),
    71  
    72    facets: {
    73      namespace: singleFacet('[data-test-namespace-facet]'),
    74      type: multiFacet('[data-test-type-facet]'),
    75      status: multiFacet('[data-test-status-facet]'),
    76      datacenter: multiFacet('[data-test-datacenter-facet]'),
    77      prefix: multiFacet('[data-test-prefix-facet]'),
    78    },
    79  });