add pattern, test file and preprocessor