@Test
    void testCaseInsensitiveHeaders() {
        MutableUserAgent mutableUserAgent = new MutableUserAgent();
        mutableUserAgent.addHeader("ONE", "1");
        mutableUserAgent.addHeader("TWO", "2");

        assertEquals("1", mutableUserAgent.getHeaders().get("oNe"));
        assertEquals("1", mutableUserAgent.getHeaders().get("OnE"));
        assertEquals("2", mutableUserAgent.getHeaders().get("tWo"));
        assertEquals("2", mutableUserAgent.getHeaders().get("TwO"));

        ImmutableUserAgent immutableUserAgent = new ImmutableUserAgent(mutableUserAgent);

        assertEquals("1", immutableUserAgent.getHeaders().get("oNe"));
        assertEquals("1", immutableUserAgent.getHeaders().get("OnE"));
        assertEquals("2", immutableUserAgent.getHeaders().get("tWo"));
        assertEquals("2", immutableUserAgent.getHeaders().get("TwO"));
    }
If a field has never been extracted yet it must still be present.
analyzer/src/test/java/nl/basjes/parse/useragent/TestUseragent.java