remove old testintegration sample file
							parent
							
								
									3d87f0d5a2
								
							
						
					
					
						commit
						8821cb1080
					
				@ -1,80 +0,0 @@
 | 
			
		||||
// tslint:disable: no-console
 | 
			
		||||
// tslint:disable no-implicit-dependencies
 | 
			
		||||
import { expect } from 'chai';
 | 
			
		||||
import { _electron as electron, ElectronApplication, Page } from 'playwright';
 | 
			
		||||
 | 
			
		||||
const NODE_ENV = 'integration-test';
 | 
			
		||||
 | 
			
		||||
function throwIfNoFirstInstance(
 | 
			
		||||
  instanceToCastIfValid: ElectronApplication | null,
 | 
			
		||||
  pageToCastIfValid: Page | null
 | 
			
		||||
): { instance: ElectronApplication; page: Page } {
 | 
			
		||||
  if (!instanceToCastIfValid) {
 | 
			
		||||
    throw new Error('no instanceToCastIfValid');
 | 
			
		||||
  }
 | 
			
		||||
  if (!pageToCastIfValid) {
 | 
			
		||||
    throw new Error('no pageToCastIfValid');
 | 
			
		||||
  }
 | 
			
		||||
  return { page: pageToCastIfValid, instance: instanceToCastIfValid };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
async function createAppInstance(MULTI: number) {
 | 
			
		||||
  // Launch Electron app.
 | 
			
		||||
  process.env.NODE_ENV = NODE_ENV;
 | 
			
		||||
  process.env.NODE_APP_INSTANCE = `${MULTI}`;
 | 
			
		||||
  const instance = await electron.launch({
 | 
			
		||||
    args: ['main.js'],
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  // Get the first window that the app opens, wait if necessary.
 | 
			
		||||
  const page = await instance.firstWindow();
 | 
			
		||||
  //   page.on('console', console.log);
 | 
			
		||||
  return { instance, page };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
async function killAppInstance(appInstance?: ElectronApplication | null) {
 | 
			
		||||
  // Kill Electron app.
 | 
			
		||||
  if (appInstance) {
 | 
			
		||||
    await appInstance.close();
 | 
			
		||||
  }
 | 
			
		||||
  return null;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
describe('quick test', () => {
 | 
			
		||||
  let firstAppInstance: ElectronApplication | null = null;
 | 
			
		||||
  let firstAppPage: Page | null = null;
 | 
			
		||||
 | 
			
		||||
  beforeEach(async () => {
 | 
			
		||||
    if (firstAppInstance) {
 | 
			
		||||
      throw new Error('beforeAll cannot create first instance');
 | 
			
		||||
    }
 | 
			
		||||
    const { instance, page } = await createAppInstance(1);
 | 
			
		||||
    firstAppInstance = instance;
 | 
			
		||||
    firstAppPage = page;
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  afterEach(async () => {
 | 
			
		||||
    firstAppInstance = await killAppInstance(firstAppInstance);
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  it('check "Begin your Session" is shown on app start', async () => {
 | 
			
		||||
    const { instance, page } = throwIfNoFirstInstance(firstAppInstance, firstAppPage);
 | 
			
		||||
    // Evaluation expression in the Electron context.
 | 
			
		||||
    const appPath = await instance.evaluate(async ({ app }) => {
 | 
			
		||||
      // This runs in the main Electron process, parameter here is always
 | 
			
		||||
      // the result of the require('electron') in the main app script.
 | 
			
		||||
      return app.getAppPath();
 | 
			
		||||
    });
 | 
			
		||||
    console.log(appPath);
 | 
			
		||||
    // Print the title.instance
 | 
			
		||||
    const title = await page.title();
 | 
			
		||||
 | 
			
		||||
    const beginSessionSelector = await page.waitForSelector(
 | 
			
		||||
      'div.session-content-accent-text.title'
 | 
			
		||||
    );
 | 
			
		||||
    const contentBeginYourSession = await beginSessionSelector.innerHTML();
 | 
			
		||||
    expect(contentBeginYourSession).to.equal('Begin your Session.');
 | 
			
		||||
 | 
			
		||||
    expect(title).to.eq('Session');
 | 
			
		||||
  });
 | 
			
		||||
});
 | 
			
		||||
					Loading…
					
					
				
		Reference in New Issue