package com.github.mike10004.seleniumhelp;

import com.github.mike10004.xvfbmanager.XvfbController;
import com.github.mike10004.xvfbtesting.XvfbRule;
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Multimap;
import com.google.common.net.HttpHeaders;
import io.github.bonigarcia.wdm.MarionetteDriverManager;
import io.netty.handler.codec.http.HttpRequest;
import io.netty.handler.codec.http.HttpResponse;
import net.lightbody.bmp.core.har.Har;
import net.lightbody.bmp.core.har.HarEntry;
import net.lightbody.bmp.core.har.HarNameValuePair;
import org.apache.commons.lang3.time.DateUtils;
import org.junit.BeforeClass;
import org.junit.Rule;
import org.junit.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;

import java.io.IOException;
import java.net.URL;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

import static com.google.common.base.Preconditions.checkArgument;
import static com.google.common.base.Preconditions.checkState;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;

public class FirefoxCookieUsageTest extends CookieUsageTestBase {

    @BeforeClass
    public static void setup() {
        MarionetteDriverManager.getInstance().setup();
    }

    @Override
    protected WebDriverFactory createCookielessWebDriverFactory(XvfbController xvfbController) {
        return new FirefoxWebDriverFactory(xvfbController.configureEnvironment(new HashMap<>()), ImmutableMap.of(), ImmutableList.of());
    }

    @Override
    protected WebDriverFactory createCookiefulWebDriverFactory(XvfbController xvfbController, List<DeserializableCookie> cookiesSetByServer) {
        return new FirefoxWebDriverFactory(xvfbController.configureEnvironment(new HashMap<>()), ImmutableMap.of(), cookiesSetByServer);
    }

    @Test
    public void testCookieUsage() throws Exception {
        exerciseCookieCapabilities();
    }
}

@@ -97,110 +97,8 @@
 er;%0A
-import com.github.mike10004.xvfbtesting.XvfbRule;%0Aimport com.google.common.collect.ArrayListMultimap;%0A
 impo
@@ -192,93 +192,8 @@
 ap;%0A
-import com.google.common.collect.Multimap;%0Aimport com.google.common.net.HttpHeaders;%0A
 impo
@@ -220,26 +220,23 @@
 cia.wdm.
-Marionette
+Firefox
 DriverMa
@@ -253,906 +253,102 @@
 ort 
-io.netty.handler.codec.http.HttpRequest;%0Aimport io.netty.handler.codec.http.HttpResponse;%0Aimport net.lightbody.bmp.core.har.Har;%0Aimport net.lightbody.bmp.core.har.HarEntry;%0Aimport net.lightbody.bmp.core.har.HarNameValuePair;%0Aimport org.apache.commons.lang3.time.DateUtils;%0Aimport org.junit.BeforeClass;%0Aimport org.junit.Rule;%0Aimport org.junit.Test;%0Aimport org.openqa.selenium.By;%0Aimport org.openqa.selenium.support.ui.ExpectedConditions;%0Aimport org.openqa.selenium.support.ui.WebDriverWait;%0A%0Aimport java.io.IOException;%0Aimport java.net.URL;%0Aimport java.util.Date;%0Aimport java.util.HashMap;%0Aimport java.util.List;%0Aimport java.util.stream.Collectors;%0Aimport java.util.stream.Stream;%0A%0Aimport static com.google.common.base.Preconditions.checkArgument;%0Aimport static com.google.common.base.Preconditions.checkState;%0Aimport static org.junit.Assert.assertEquals;%0Aimport static org.junit.Assert.assertFalse
+org.junit.BeforeClass;%0Aimport org.junit.Test;%0A%0Aimport java.util.HashMap;%0Aimport java.util.List
 ;%0A%0Ap
@@ -475,18 +475,15 @@
     
-Marionette
+Firefox
 Driv

remove unused imports