@@ -0,0 +1,1265 @@
+package de.retest.recheck.review.ignore;%0A%0Aimport static org.assertj.core.api.Assertions.assertThat;%0Aimport static org.mockito.Mockito.mock;%0A%0Aimport org.junit.jupiter.api.Test;%0A%0Aimport de.retest.recheck.ui.descriptors.Element;%0Aimport de.retest.recheck.ui.diff.AttributeDifference;%0A%0Aclass ExcludeFilterIT %7B%0A%0A%09@Test%0A%09void load_should_handle_multiple_entries() %7B%0A%09%09final Element element = mock( Element.class );%0A%0A%09%09final AttributeFilter.AttributeFilterLoader delegate = new AttributeFilter.AttributeFilterLoader();%0A%09%09final ExcludeFilter.FilterLoader cut = new ExcludeFilter.FilterLoader( delegate );%0A%0A%09%09assertThat( cut.load( %22exclude(attribute=text), exclude(attribute=font)%22 ) ).hasValueSatisfying( filter -%3E %7B%0A%09%09%09assertThat( filter.matches( element, %22class%22 ) ).isTrue();%0A%09%09%09assertThat( filter.matches( element, difference( %22class%22 ) ) ).isTrue();%0A%0A%09%09%09assertThat( filter.matches( element, %22font%22 ) ).isFalse();%0A%09%09%09assertThat( filter.matches( element, difference( %22font%22 ) ) ).isFalse();%0A%0A%09%09%09assertThat( filter.matches( element, %22text%22 ) ).isFalse();%0A%09%09%09assertThat( filter.matches( element, difference( %22text%22 ) ) ).isFalse();%0A%09%09%7D );%0A%09%7D%0A%0A%09private AttributeDifference difference( final String key ) %7B%0A%09%09return new AttributeDifference( key, %22expected%22, %22actual%22 );%0A%09%7D%0A%7D%0A

Add integration test to handle multiple excludes