@Override
  @BeforeClass(groups = "live")
  public void setupContext() {
    super.setupContext();
    instanceName =
        VIRTUALBOX_IMAGE_PREFIX
            + CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_HYPHEN, getClass().getSimpleName());

    StorageController ideController =
        StorageController.builder()
            .name("IDE Controller")
            .bus(StorageBus.IDE)
            .attachISO(0, 0, operatingSystemIso)
            .attachHardDisk(
                HardDisk.builder()
                    .diskpath(adminDisk(instanceName))
                    .controllerPort(0)
                    .deviceSlot(1)
                    .autoDelete(true)
                    .build())
            .attachISO(1, 1, guestAdditionsIso)
            .build();

    VmSpec instanceVmSpec =
        VmSpec.builder()
            .id(instanceName)
            .name(instanceName)
            .osTypeId("")
            .memoryMB(512)
            .cleanUpMode(CleanupMode.Full)
            .controller(ideController)
            .forceOverwrite(true)
            .build();

    Injector injector = view.utils().injector();
    Function<String, String> configProperties =
        injector.getInstance(ValueOfConfigurationKeyOrNull.class);
    IsoSpec isoSpec =
        IsoSpec.builder()
            .sourcePath(operatingSystemIso)
            .installationScript(
                configProperties
                    .apply(VIRTUALBOX_INSTALLATION_KEY_SEQUENCE)
                    .replace("HOSTNAME", instanceVmSpec.getVmName()))
            .build();

    NetworkAdapter networkAdapter =
        NetworkAdapter.builder()
            .networkAttachmentType(NetworkAttachmentType.NAT)
            .tcpRedirectRule("127.0.0.1", 2222, "", 22)
            .build();
    NetworkInterfaceCard networkInterfaceCard =
        NetworkInterfaceCard.builder().addNetworkAdapter(networkAdapter).build();

    NetworkSpec networkSpec = NetworkSpec.builder().addNIC(networkInterfaceCard).build();
    machineSpec = MasterSpec.builder().iso(isoSpec).vm(instanceVmSpec).network(networkSpec).build();
  }
  @Test
  public void testLoadStartsJettyServer() throws Exception {
    Server jetty = createMock(Server.class);

    String preconfigurationUrl = "http://foo:8080";

    expect(jetty.getState()).andReturn(Server.STARTED);

    replay(jetty);

    StartJettyIfNotAlreadyRunning starter =
        new StartJettyIfNotAlreadyRunning(preconfigurationUrl, jetty);

    IsoSpec isoSpec =
        IsoSpec.builder()
            .sourcePath("/tmp/myisos/ubuntu.iso")
            .installationScript("install")
            .build();
    assertEquals(starter.load(isoSpec), URI.create(preconfigurationUrl));
    verify(jetty);
  }