View Javadoc

    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one
    3    * or more contributor license agreements.  See the NOTICE file
    4    * distributed with this work for additional information
    5    * regarding copyright ownership.  The ASF licenses this file
    6    * to you under the Apache License, Version 2.0 (the
    7    * "License"); you may not use this file except in compliance
    8    * with the License.  You may obtain a copy of the License at
    9    *
    10   *   http://www.apache.org/licenses/LICENSE-2.0
    11   *
    12   * Unless required by applicable law or agreed to in writing,
    13   * software distributed under the License is distributed on an
    14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    15   * KIND, either express or implied.  See the License for the
    16   * specific language governing permissions and limitations
    17   * under the License.
    18   */
    19  package org.apache.mina.util;
    20
    21  import static org.hamcrest.CoreMatchers.is;
    22  import static org.junit.Assert.assertThat;
    23
    24  import org.junit.Rule;
    25  import org.junit.Test;
    26  import org.junit.rules.ExpectedException;
    27
    28  /**
    29   * Tests class {@link Assert}
    30   *
    31   * @author <a href="http://mina.apache.org">Apache MINA Project</a>
    32   */
    33  public class AssertTest {
    34      /** checks Exception parameters */
    35      @Rule
    36      public final ExpectedException exception = ExpectedException.none();
    37
    38      /**
    39       * Tests if a {@link IllegalArgumentException} is thrown when a
    40       * <code>null</code>-value is passed.
    41       *
    42       * @throws Exception
    43       */
    44      @Test
    45      public void parameterNotNullWithNullValue() throws Exception {
    46          exception.expect(IllegalArgumentException.class);
    47          exception.expectMessage("Parameter >parameterName< must not be null!");
    48          Assert.assertNotNull(null, "parameterName");
    49      }
    50
    51      /** Tests if a non <code>null</code> value is returned.  */
    52      @Test
    53      public void parameterNotNullWithNonNullValue() {
    54          Integer result = Assert.assertNotNull(123, "parameterName");
    55          assertThat(result, is(123));
    56      }
    57
    58      /**
    59       * Tests if a {@link IllegalArgumentException} is thrown when a
    60       * <code>null</code>-value is passed.
    61       *
    62       * @throws Exception
    63       */
    64      @Test
    65      public void parameterNotNullWithMissingParameterName() throws Exception {
    66          exception.expect(IllegalArgumentException.class);
    67          exception.expectMessage("You must provide a parameter name!");
    68          Assert.assertNotNull("", null);
    69      }
    70  }