/*
* https://webfolder.io/license.html
*/
package io.webfolder.cdp.network;
import io.webfolder.cdp.Example;
import io.webfolder.cdp.Launcher;
import io.webfolder.cdp.command.Network;
import io.webfolder.cdp.session.Session;
import io.webfolder.cdp.session.SessionFactory;
@Example
public class NetworkConditionEmulation {
public static void main(String[] args) {
Launcher launcher = new Launcher();
try (SessionFactory factory = launcher.launch();
Session session = factory.create()) {
Network network = session.getCommand().getNetwork();
// 3G connection
Boolean offline = false;
Double latencyMs = 150 * 3.75;
Double downloadThroughput = ((1.6 * 1000 * 1000) / 8) * 0.9; // bytes seconds
Double uploadThroughput = ((750 * 1000) / 8) * 0.9 ; // bytes seconds
network.emulateNetworkConditions(offline,
latencyMs,
downloadThroughput,
uploadThroughput);
session.navigate("https://aol.com");
session.waitDocumentReady(60_000);
} finally {
launcher.kill();
}
}
}