# Copyright 2016 The PDFium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#
# List of tests to be skipped, one per line.
# There are four space-separated columns per line
# Each column (except column 0) can contain a comma-separated list of values.
#
# Column 0: test file name
# Column 1: platform: *, win, mac, linux
# Column 2: v8 support: *, nov8, v8
# Column 3: xfa support: *, noxfa, xfa
#
# All columns on a line on a line must match, but filenames may be repeated
# on subsequent lines to suppress more cases.  Within each column, any one of
# the comma-separated values must match in order for the colum to "match".
# The filenames and keywords are case-sensitive.
#
# Try to keep the file alphabetized within each category of test.

#
# Pixel tests
#
font_size.in mac * *

#
# Corpus tests
#
050_extra_m.pdf mac,win * *
12.pdf mac * *
1_10_watermark.pdf * * *
1_1_textbox.pdf * * *
1_2_typewriter.pdf * * *
1_3_callout.pdf * * *
1_matrix.pdf mac * *
1m_diff_lsjdf.pdf mac * *
1m_same_xxxx.pdf mac * *
2_11_stamp3.pdf mac * *
2_6_textbox.pdf * * *
2_color_calrgb.pdf mac * *
2_color_indexed.pdf mac * *
3_4_textbox.pdf * * *
3_interpolate_image.pdf mac * *
3bigpreview.pdf mac,win * *
4_35.pdf mac * *
4_39.pdf mac * *
5.1.pdf mac * *
5.2.pdf * * *
5.5_simple_font.pdf mac,win * *
8.2_name_dest_f_dest.pdf mac * *
8.2_outline.pdf mac * *
8.3_presentation.pdf mac * *
FRC_10_8.2.2_Prev_remove_all.pdf mac * *
FRC_10_8.2.2__T8.3_original_file.pdf * * *
FRC_10_8.2.4_View_C.pdf mac * *
FRC_10_8.2.4__remove_ModDate_value.pdf mac * *
FRC_11_8.2.2_Prev_remove_obj.pdf mac * *
FRC_11_8.2.2__T8.3_first_last_exchange.pdf * * *
FRC_11_8.2.4_View_edit.pdf mac * *
FRC_11_8.2.4__remove_ModDate_all.pdf mac * *
FRC_12_8.2.2__Next_remove_value.pdf mac * *
FRC_12_8.2.2__T8.3_first_outline_obj_ID.pdf * * *
FRC_12_8.2.4_View_remove_all.pdf mac * *
FRC_12_8.2.4__remove_ModDate_obj_.pdf mac * *
FRC_13_8.2.2__Next_remove_all.pdf mac * *
FRC_13_8.2.2__T8.3_Count_edit300.pdf * * *
FRC_13_8.2.4_View_remove_value.pdf mac * *
FRC_13_8.2.4_remove_Size_value.pdf mac * *
FRC_14_8.2.2__Next_remove_obj.pdf mac * *
FRC_14_8.2.2__T8.3_Count_edit0.pdf * * *
FRC_14_8.2.4_Sort_remove_all.pdf mac * *
FRC_14_8.2.4_remove_Size_all.pdf mac * *
FRC_15_8.2.2__Next_exchange.pdf mac * *
FRC_15_8.2.2__T8.3_Count_edit1.pdf * * *
FRC_15_8.2.4_Sort_remove_value.pdf mac * *
FRC_15_8.2.4_remove_Size_obj.pdf mac * *
FRC_16_8.2.2__Next_add.pdf mac * *
FRC_16_8.2.2__T8.3_Count_edit_1.pdf * * *
FRC_16_8.2.4__remove_CompressedSize__value.pdf mac * *
FRC_17_8.2.2__T8.4_First_remove_value.pdf mac * *
FRC_17_8.2.4__remove_CompressedSize__all.pdf mac * *
FRC_18_8.2.2__T8.4_First_remove_all.pdf mac * *
FRC_18_8.2.4__remove_CompressedSize__obj.pdf mac * *
FRC_19_8.2.2__T8.4_First_remove_obj.pdf mac * *
FRC_19_8.2.4__remove_CreationDate_value.pdf mac * *
FRC_1_8.2.2__T8.3_First_empty.pdf * * *
FRC_1_8.2.2__Title_edit.pdf mac * *
FRC_1_8.2.4_Type_8.6_.pdf mac * *
FRC_1_8.2.4__original.pdf mac * *
FRC_20_8.2.2__T8.4_First_remove_value2.pdf mac * *
FRC_20_8.2.4__remove_CreationDate_all.pdf mac * *
FRC_21_8.2.2__T8.4_First_remove_all2.pdf mac * *
FRC_21_8.2.4__remove_CreationDate_obj.pdf mac * *
FRC_22_8.2.2__T8.4_First_remove_obj2.pdf mac * *
FRC_22_8.2.4__remove_Order_value.pdf mac * *
FRC_23_8.2.2__T8.4_Last_remove_value.pdf mac * *
FRC_23_8.2.4__remove_Order_all.pdf mac * *
FRC_24_8.2.2__T8.4_Last_remove_all.pdf mac * *
FRC_24_8.2.4__remove_Order_obj.pdf mac * *
FRC_25_8.2.2__T8.4_Last_remove_obj.pdf mac * *
FRC_26_8.2.2__T8.4_Last_remove_value2.pdf mac * *
FRC_27_8.2.2__T8.4_Last_remove_all2.pdf mac * *
FRC_28_8.2.2__T8.4_Last_remove_obj2.pdf mac * *
FRC_29_8.2.2__T8.4_First_Last_exchange.pdf mac * *
FRC_2_8.2.2__T8.3_Last_empty.pdf * * *
FRC_2_8.2.2__Title_remove_value.pdf mac * *
FRC_2_8.2.4_Type_8.6__remove_value.pdf mac * *
FRC_2_8.2.4__add_type_.pdf mac * *
FRC_3.5_AuthEvent_EFOpen.pdf mac * *
FRC_3.5_CFM_AESV2__EncryptMetadata_F.pdf mac * *
FRC_3.5_CF_EFF_StdCF_Strf_Stmf_Identity.pdf mac * *
FRC_3.5_CF_Strf_stmf_StdCF.pdf mac * *
FRC_3.5_EncryptMetadata_None.pdf mac * *
FRC_3.5_P_4_Password_1.pdf mac * *
FRC_3.5_P__1852_Password_1.pdf mac * *
FRC_3.5_P__2584_Password_1.pdf mac * *
FRC_3.5_P__2616_Password_1.pdf mac * *
FRC_3.5_P__2880_Password_1.pdf mac * *
FRC_3.5_P__3376_Password_1.pdf mac * *
FRC_3.5_P__3392_Password_1.pdf mac * *
FRC_3.5_P__3608_Password_1.pdf mac * *
FRC_3.5_P__3616_Password_1.pdf mac,win * *
FRC_3.5_P__3648_Password_1.pdf mac * *
FRC_3.5_P__3900_Password_1.pdf mac * *
FRC_3.5_V_4_CFM_V2_.pdf mac * *
FRC_3.5_V_5_CFM_AESV3.pdf mac * *
FRC_3.5_v_1_length_40_Filter_standard.pdf mac * *
FRC_3.5_v_2_length_128_AuthEvent_DocOpen_.pdf mac * *
FRC_31_8.2.2_add_dest_entry.pdf mac * *
FRC_32_8.2.2_A_Support_action.pdf mac * *
FRC_33_8.2.2_A_empty.pdf mac * *
FRC_34_8.2.2_A_remove.pdf mac * *
FRC_35_8.2.2_A_remove_A_item.pdf mac * *
FRC_36_8.2.2_Dest.pdf mac * *
FRC_37_8.2.2_Dest_empty.pdf mac * *
FRC_38_8.2.2_Dest_remove.pdf mac * *
FRC_39_8.2.2_C_edit.pdf mac * *
FRC_3_8.2.2_Type_empty.pdf * * *
FRC_3_8.2.2__Title_remove_all.pdf mac * *
FRC_3_8.2.4_Type_8.6__edit_.pdf mac * *
FRC_3_8.2.4__add_type_value.pdf mac * *
FRC_4.5.3_DeviceCMYK_k.pdf mac * *
FRC_4.5.3_DeviceGray_g.pdf mac * *
FRC_4.5.3_DeviceRGB_rg.pdf mac * *
FRC_4.5.4_CalGray_gamma.pdf mac * *
FRC_4.5.4_CalGray_whitepoint.pdf mac * *
FRC_4.5.4_CalRGB_gamma.pdf mac * *
FRC_4.5.4_CalRGB_matrix.pdf mac * *
FRC_4.5.4_CalRGB_whitepoint.pdf mac * *
FRC_4.5.4_ICCBased.pdf mac * *
FRC_4.5.4_Lab.pdf mac * *
FRC_4.5.4_RI_Absolute.pdf mac * *
FRC_4.5.4_RI_Perceptual.pdf mac * *
FRC_4.5.4_RI_Relative.pdf mac * *
FRC_4.5.4_RI_Saturation.pdf mac * *
FRC_4.5.4_Separation.pdf mac * *
FRC_4.5.5_DeviceN.pdf mac * *
FRC_4.5.5_Indexed.pdf mac * *
FRC_4.5.5_Pattern_tiling.pdf mac * *
FRC_40_8.2.2_C_empty1.pdf mac * *
FRC_41_8.2.2_C_empty2.pdf mac * *
FRC_42_8.2.2_C_empty3.pdf mac * *
FRC_43_8.2.2_C_empty.pdf mac * *
FRC_44_8.2.2_C_remove.pdf mac * *
FRC_45_8.2.2_F_edit_F_1_2_3.pdf mac * *
FRC_46_8.2.2_F_edit_F__1__2__3.pdf mac * *
FRC_47_8.2.2_F_edit_F_32__32.pdf mac * *
FRC_48_8.2.2_F_edit_F_100__100.pdf mac * *
FRC_49_8.2.2_F_empty.pdf mac * *
FRC_4_8.2.2_Parent_edit2.pdf mac * *
FRC_4_8.2.2__T8.3_Count_empty.pdf * * *
FRC_4_8.2.4_Schema_8.6__remove_all.pdf mac * *
FRC_4_8.2.4__remove_FileName_value.pdf mac * *
FRC_50_8.2.2_F_remove.pdf mac * *
FRC_51_8.2.2_T_8.4__Count_edit_count_100.pdf mac * *
FRC_52_8.2.2_T_8.4__Count_edit_count_0.pdf mac * *
FRC_53_8.2.2_T_8.4__Count_empty.pdf mac * *
FRC_54_8.2.2_T_8.4__Count_empty1.pdf mac * *
FRC_55_8.2.2_T_8.4__Count_remove.pdf mac * *
FRC_56_8.2.2_C_edit_C__1.pdf mac * *
FRC_57_8.2.2_C_edit_C_2.pdf mac * *
FRC_58_8.2.2_Count_edit_count__2.pdf mac * *
FRC_5_8.2.2_Parent_remove_value.pdf mac * *
FRC_5_8.2.2__T8.3_First_remove.pdf * * *
FRC_5_8.2.4_Schema_8.6__remove_value.pdf mac * *
FRC_5_8.2.4__remove_FileName_all.pdf mac * *
FRC_6_8.2.2_Parent_remove_all.pdf mac * *
FRC_6_8.2.2__T8.3_Last_remove.pdf * * *
FRC_6_8.2.4_Schema_8.6__remove_obj.pdf mac * *
FRC_6_8.2.4__remove_FileName_obj.pdf mac * *
FRC_7_8.2.2_Parent_remove_obj.pdf mac * *
FRC_7_8.2.2_Type_remove.pdf * * *
FRC_7_8.2.4_View_H.pdf mac * *
FRC_7_8.2.4__remove_Description_value.pdf mac * *
FRC_8.4.1_Annotations_AP_N_.pdf mac * *
FRC_8.4.1_Annotations_AP_N_R.D_.pdf mac * *
FRC_8.4.1_Annotations_AP_N_R_.pdf mac * *
FRC_8.4.1_Annotations_AS_Off_.pdf mac * *
FRC_8.4.1_Annotations_AS_Yes_.pdf mac * *
FRC_8.4.1_Annotations_Border.pdf mac * *
FRC_8.4.1_Annotations_C.pdf mac * *
FRC_8.4.1_Annotations_M.pdf * * *
FRC_8.4.1_Annotations_M_text_string_.pdf mac * *
FRC_8.4.1_Annotations_NM.pdf * * *
FRC_8.4.1_Annotations_P.pdf mac * *
FRC_8.4.1_Annotations_Rect.pdf mac * *
FRC_8.4.1_Annotations_Type.pdf mac * *
FRC_8.4.2_Annotation_Flags_F_Hidden.pdf mac * *
FRC_8.4.2_Annotation_Flags_F_Invisible.pdf mac * *
FRC_8.4.2_Annotation_Flags_F_Locked.pdf mac * *
FRC_8.4.2_Annotation_Flags_F_LockedContents.pdf mac * *
FRC_8.4.2_Annotation_Flags_F_NoRotate.pdf mac * *
FRC_8.4.2_Annotation_Flags_F_NoView.pdf mac * *
FRC_8.4.2_Annotation_Flags_F_NoZoom.pdf mac * *
FRC_8.4.2_Annotation_Flags_F_Print.pdf mac * *
FRC_8.4.2_Annotation_Flags_F_ReadOnly.pdf mac * *
FRC_8.4.2_Annotation_Flags_F_ToggleNoView.pdf mac * *
FRC_8.4.3_Border_Stypes_D_different_values.pdf mac * *
FRC_8.4.3_Border_Stypes_D_remove.pdf mac * *
FRC_8.4.3_Border_Stypes_I_different_values.pdf mac * *
FRC_8.4.3_Border_Stypes_I_remove.pdf mac * *
FRC_8.4.3_Border_Stypes_S_different_values_BE_.pdf mac * *
FRC_8.4.3_Border_Stypes_S_different_values_BS_.pdf mac * *
FRC_8.4.3_Border_Stypes_S_not_exist_BS_.pdf mac * *
FRC_8.4.3_Border_Stypes_S_remove_BE_.pdf mac * *
FRC_8.4.3_Border_Stypes_S_remove_BS_.pdf mac * *
FRC_8.4.3_Border_Stypes_Type_add.pdf mac * *
FRC_8.4.3_Border_Stypes_Type_not_exist_default_.pdf mac * *
FRC_8.4.3_Border_Stypes_W_different_values.pdf mac * *
FRC_8.4.3_Border_Stypes_W_remove.pdf mac * *
FRC_8.5_Bl_Hide.pdf mac * *
FRC_8.5_Catalog_OpenAction.pdf mac * *
FRC_8.5_Catalog_WC.pdf mac * *
FRC_8.5_DP.pdf mac * *
FRC_8.5_DS.pdf mac * *
FRC_8.5_E_GoTo_D.pdf mac * *
FRC_8.5_Fo_URI_Base.pdf mac * *
FRC_8.5_Link_URL.pdf mac * *
FRC_8.5_Outline_A.pdf mac * *
FRC_8.5_Page_C_SubmitForm.pdf * * *
FRC_8.5_Page_O_URI.pdf mac * *
FRC_8.5_Page_PI_ResetForm_Phantom.pdf * * *
FRC_8.5_Page_PV_Named_Phantom.pdf mac * *
FRC_8.5_Screen_Fo_JavaScript.pdf mac * *
FRC_8.5_Screen_Img_D_Launch.pdf mac * *
FRC_8.5_Screen_Rendition.pdf mac * *
FRC_8.5_URI_IsMap.pdf mac * *
FRC_8.5_U_GoToR_NewWindow.pdf mac * *
FRC_8.5_U_GoToR_NewWindow_2.pdf mac * *
FRC_8.5_WP.pdf mac * *
FRC_8.5_WS.pdf mac * *
FRC_8.5_Widget_C.pdf mac * *
FRC_8.5_Widget_F.pdf mac * *
FRC_8.5_Widget_F.pdf * nov8 *
FRC_8.5_Widget_K.pdf mac * *
FRC_8.5_Widget_V.pdf mac * *
FRC_8.5_X_GoToR_D.pdf mac * *
FRC_8_8.2.2_Parent_edit.pdf mac * *
FRC_8_8.2.2__T8.3_Count_remove.pdf * * *
FRC_8_8.2.4_View_D.pdf mac * *
FRC_8_8.2.4__remove__Description_all.pdf mac * *
FRC_9_8.2.2_Prev_remove_value.pdf mac * *
FRC_9_8.2.2__T8.3_remove_first_item.pdf * * *
FRC_9_8.2.4_View_T.pdf mac * *
FRC_9_8.2.4__remove__Description_obj.pdf mac * *
action.pdf * * *
action_execute_a_menu_item.pdf mac * *
action_hide_show_form.pdf mac * *
action_on_focus.pdf mac * *
action_open_a_file.pdf mac * *
action_pdf_save_close.pdf mac * *
action_reset.pdf mac * *
action_run_javascript.pdf mac * *
action_submit_a_form.pdf mac * *
all_trigger_alert.pdf * * *
all_trigger_browsefordoc.pdf * * *
all_trigger_mailmsg.pdf * * *
all_trigger_newdoc.pdf * * *
all_trigger_print.pdf * * *
all_trigger_run_js_lunchurl.pdf mac * *
all_trigger_run_js_maildoc.pdf mac * *
annotation_highlight_author_content.pdf mac * *
annotation_highlight_long_content.pdf mac * *
annotation_highlight_no_author.pdf mac * *
app_launchurl.pdf mac * *
appstoredescription3.1_en_updated.pdf mac * *
bookmark.pdf * * *
bookmarkgetcolor.pdf mac * *
bug_0_length_line.pdf mac * *
bug_0_width_line.pdf mac * *
bug_434.pdf * * noxfa
bug_434.pdf win * xfa
bug_440132.pdf mac * *
bug_white_space.pdf mac * *
calcorderindex_test.pdf * * *
calculate_average.pdf mac * *
calculate_order.pdf * * *
calculate_sum_a_b_c.pdf mac * *
calculate_validate.pdf mac * *
calculate_validate.pdf * nov8 *
ch_1.pdf * * *
check_box.pdf * * *
color.pdf mac * *
colorspace.pdf mac * *
colorspace_test1.pdf mac * *
combo_box.pdf * * *
combo_box_format.pdf mac * *
date.pdf mac * *
edit_transform.pdf mac * *
en_contact.pdf mac * *
en_diy.pdf mac * *
en_foxit.pdf mac * *
en_fqa2.pdf mac * *
en_introduce.pdf mac * *
en_tem.pdf mac * *
en_uicase_.pdf mac * *
event.change.pdf mac * *
event.changeex.pdf mac * *
event.keydown.pdf mac * *
event.keydown_1_.pdf mac * *
event.type_name.pdf mac * *
event.value.pdf mac * *
event_change.pdf mac * *
example_001.pdf mac * *
example_002.pdf mac,win * *
example_003.pdf mac,win * *
example_004.pdf mac * *
example_005.pdf mac * *
example_006.pdf mac,win * *
example_007.pdf mac * *
example_008.pdf mac * *
example_009.pdf mac * *
example_010.pdf mac,win * *
example_011.pdf mac * *
example_012.pdf mac * *
example_013.pdf mac * *
example_014.pdf mac * *
example_015.pdf mac,win * *
example_016.pdf mac * *
example_017.pdf mac * *
example_018.pdf mac * *
example_019.pdf mac * *
example_020.pdf mac * *
example_021.pdf mac * *
example_022.pdf mac * *
example_023.pdf mac,win * *
example_024.pdf mac * *
example_025.pdf mac * *
example_026.pdf mac * *
example_027.pdf mac * *
example_028.pdf mac * *
example_029.pdf mac * *
example_030.pdf mac * *
example_031.pdf mac * *
example_032.pdf mac * *
example_033.pdf mac,win * *
example_034.pdf mac * *
example_035.pdf mac,win * *
example_036.pdf mac,win * *
example_037.pdf mac * *
example_038.pdf mac,win * *
example_039.pdf mac * *
example_040.pdf mac * *
example_041.pdf mac,win * *
example_042.pdf mac * *
example_043.pdf mac * *
example_044.pdf mac * *
example_045.pdf mac,win * *
example_046.pdf mac,win * *
example_047.pdf mac * *
example_048.pdf mac * *
example_049.pdf mac * *
example_050.pdf mac * *
example_051.pdf mac * *
example_052.pdf mac * *
example_053.pdf mac,win * *
example_054.pdf mac * *
example_055.pdf mac,win * *
example_056.pdf mac * *
example_057.pdf mac * *
example_058.pdf mac * *
example_059.pdf mac,win * *
example_060.pdf mac * *
example_061.pdf mac,win * *
example_062.pdf mac * *
example_063.pdf mac * *
example_064.pdf mac * *
example_065.pdf mac * *
fillform.pdf * * *
form_action_trigger.pdf * * *
form_button_sign_url.pdf * * *
form_combo_sign_url.pdf * * *
form_combobox0.pdf * * *
form_combobox_actioin_goto.pdf * * *
form_combobox_date.pdf mac * *
form_combobox_date.pdf * nov8 *
form_combobox_date1.pdf * * *
form_combobox_date2.pdf mac * *
form_combobox_date2.pdf * nov8 *
form_combobox_importform.pdf * * *
form_combobox_num.pdf mac * *
form_combobox_num.pdf * nov8 *
form_combobox_per.pdf mac * *
form_combobox_per.pdf * nov8 *
form_combobox_plus.pdf mac * *
form_combobox_plus.pdf * nov8 *
form_combobox_product.pdf mac * *
form_combobox_product.pdf * nov8 *
form_combobox_resetform.pdf * * *
form_combobox_time.pdf mac * *
form_combobox_time.pdf * nov8 *
form_list.pdf * * *
form_list1.pdf * * *
form_same.pdf mac * *
form_text_sign_url.pdf * * *
format_combo_box.pdf mac * *
format_combo_box.pdf * nov8 *
format_custom_format.pdf linux,mac * *
format_custom_format.pdf * nov8 *
format_custom_keystroke.pdf * * *
format_date.pdf * nov8 *
format_number.pdf mac * *
format_percentage.pdf mac * *
format_special.pdf * nov8 *
format_text_color.pdf mac * *
formfeild.pdf * * *
getarray.pdf mac * *
javascriptaction.pdf * * *
jetman_std.pdf mac * *
jetman_std_fixed.pdf mac * *
js_calculate.pdf * * *
list_box.pdf * * *
negative.pdf mac * *
new_certify1.pdf mac * *
new_signature1.pdf mac * *
new_signature2.pdf mac * *
new_stamp4.pdf mac * *
new_stamp5.pdf mac * *
new_textmarkup1.pdf mac * *
new_textmarkup1_hidden.pdf mac * *
new_textmarkup2.pdf mac * *
new_textmarkup2_hidden.pdf mac * *
new_textmarkup4.pdf mac * *
new_textmarkup4_hidden.pdf mac * *
new_textmarkup5.pdf mac * *
new_textmarkup5_hidden.pdf mac * *
new_textmarkup6.pdf mac * *
new_textmarkup7.pdf mac * *
new_textmarkup7_hidden.pdf mac * *
new_textmarkup8.pdf mac * *
new_textmarkup8_hidden.pdf mac * *
number.pdf * * *
octest.pdf mac * *
open_a_weblink.pdf mac * *
path_10_jd.pdf mac * *
path_5_pattern.pdf mac * *
path_6_graphics4.5.5.pdf mac * *
path_7.pdf mac * *
path_9.pdf mac * *
percentage.pdf mac * *
push_button.pdf * * *
quick_start_guide.pdf mac * *
radio_button.pdf * * *
run_custom_validate_script.pdf * * *
show_1.pdf mac * *
signature.pdf * * *
signature_4.pdf * * *
simplified_field_notation.pdf mac * *
special.pdf mac * *
submit_form.pdf mac * *
test_app_beep.pdf * * *
test_control.pdf * * *
test_m.pdf mac,win * *
text_field.pdf * * *
text_field_font_input_decimal_point.pdf mac * *
text_field_multiline_line_spacing.pdf mac * *
thread_action.pdf mac * *
time.pdf mac * *
transformation.pdf mac * *
transparent.pdf mac * *
whats_new_in_v3.0.pdf mac * *
widget_javascript.pdf mac * *
zh_file1.pdf mac * *
zh_function_list.pdf mac * *
zh_shared_document.pdf mac * *

bug_679643.in * * noxfa
bug_679642.in * * noxfa

#
# xfa_specific
#
Choose.pdf * * *
data_binding.pdf * * *
Date_FormCale.pdf * * *
Sum.pdf * * *
TimeField.pdf win,linux * *
Test_CheckBox.pdf * * *
Test_DateField_locale_zh_HK.pdf mac,win * *

