function startSim()

in lib/run.js [219:243]


function startSim (appPath, target) {
    const projectPath = path.join(path.dirname(appPath), '../..');
    const logPath = path.join(projectPath, 'cordova/console.log');
    const deviceTypeId = `com.apple.CoreSimulator.SimDeviceType.${target}`;

    const subprocess = execa(
        require.resolve('ios-sim/bin/ios-sim'),
        ['launch', appPath, '--devicetypeid', deviceTypeId, '--log', logPath, '--exit'],
        { cwd: projectPath }
    );

    // FIXME: data emitted is not necessarily a complete line
    subprocess.stderr.on('data', data => {
        events.emit('error', `[ios-sim] ${data}`);
    });
    subprocess.stdout.on('data', data => {
        events.emit('log', `[ios-sim] ${data}`);
    });

    subprocess.then(() => {
        events.emit('log', 'Simulator successfully started via `ios-sim`.');
    });

    return subprocess;
}