private static void assertCoverage(List<Integer> registered, List<Integer> tested) {
        boolean ok = true;
        List<Integer> lst = new ArrayList<>(tested);
        for (Integer type : registered) {
            if (!lst.contains(type)) {
                System.err.println("Routable type " + type + " is registered in DocumentProtocol but not tested.");
                ok = false;
            } else {
                lst.remove(type);
            }
        }
        if (!lst.isEmpty()) {
            for (Integer type : lst) {
                System.err.println("Routable type " + type + " is tested but not registered in DocumentProtocol.");
            }
            ok = false;
        }
        assertTrue(ok);
    }
Reads the content of the given file and creates a corresponding routable.

@param filename The name of the file to read from.
@param classId  The type that the routable must decode as.
@param lang     The language constant that dictates what file format to read from.
@return The decoded routable.
documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/MessagesTestBase.java