integration/js/steps/StartMeetingTranscriptionStep.js (32 lines of code) (raw):

const AppTestStep = require('../utils/AppTestStep'); class StartMeetingTranscriptionStep extends AppTestStep { constructor(kiteBaseTest, sessionInfo, useMedical) { super(kiteBaseTest, sessionInfo); this.useMedical = useMedical; } static async executeStep(KiteBaseTest, sessionInfo, useMedical) { const step = new StartMeetingTranscriptionStep(KiteBaseTest, sessionInfo, useMedical); await step.execute(KiteBaseTest); } stepDescription() { return 'Start transcription for the meeting'; } metricName() { return 'StartMeetingTranscriptionStep'; } async run() { await this.page.clickOnMicrophoneDropDownButton(); if (!await this.page.isLiveTranscriptionPresentInDeviceMenu()) { throw new Error('Live Transcription not present in menu'); } await this.page.clickLiveTranscriptionMenuButton(); if (!this.useMedical) { await this.page.clickTranscribeEngineOption(); } else { await this.page.clickTranscribeMedicalEngineOption(); } await this.page.clickStartTranscriptionButton(); this.finished('transcription_started'); } } module.exports = StartMeetingTranscriptionStep;