View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *     http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  package org.apache.commons.configuration2.event;
18  
19  import static org.junit.jupiter.api.Assertions.assertEquals;
20  
21  /**
22   * A test event listener class that can be used for testing whether event sources generated correct events.
23   */
24  public class EventListenerTestImpl extends AbstractEventListenerTestImpl<ConfigurationEvent> {
25      /**
26       * Creates a new instance of {@code EventListenerTestImpl} and sets the expected event source.
27       *
28       * @param source the event source (<b>null</b> if the source need not to be checked)
29       */
30      public EventListenerTestImpl(final Object source) {
31          super(source);
32      }
33  
34      /**
35       * Checks an expected event.
36       *
37       * @param type the event type
38       * @param propName the expected property name
39       * @param propValue the expected property value
40       * @param before the expected before flag
41       */
42      public void checkEvent(final EventType<?> type, final String propName, final Object propValue, final boolean before) {
43          final ConfigurationEvent e = nextEvent(type);
44          assertEquals(propName, e.getPropertyName());
45          assertEquals(propValue, e.getPropertyValue());
46          assertEquals(before, e.isBeforeUpdate());
47      }
48  }