requires matching headers if defined
falls back to no-header-mock if none matched