Home Reference Source

src/clients/mock-provisioned-service-client.js

import ProvisionedService from "../types/provisioned-service";

/**
 * Mock client for retrieving and parsing Provisioned Services.
 */
export default class MockProvisionedServiceClient {
  /**
   * Retrieve a {@link ProvisionedService} from a namespace, by name.
   * @returns {ProvisionedService}
   */
  static getProvisionedService() {
    const identifier = MockProvisionedServiceClient._randomIdentifier();
    return new ProvisionedService(`mock-service-${identifier}`, `https://mock-service-${identifier}.com/`, `mock-service-${identifier}-name`);
  }

  /**
   * Retrieve a randomly named {@link ProvisionedService}
   * @returns {ProvisionedService[]}
   */
  static listProvisionedServices() {
    return [this.getProvisionedService(), this.getProvisionedService(), this.getProvisionedService];
  }

  /**
   * Generate a random identifier for the client.
   * @private
   * @returns {number}
   */
  static _randomIdentifier() {
    return Math.floor(Math.random() * (9999 - 1000 + 1)) + 1000;
  }
}