com.kapil.framework.lang.Assert Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of iframework Show documentation
Show all versions of iframework Show documentation
This is a set of utilities and classes that I have found useful over the years.
In my career spanning over a decade, I have time and again written the same code or
some part of the code over and over again. I never found the time to collate the details
in a reusable library. This project will be a collection of such files.
The work that I have been doing is more than 5 years old, however the project has been
conceived in 2011.
The newest version!
/*******************************************************************************
* Copyright 2011 @ Kapil Viren Ahuja
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
******************************************************************************/
package com.kapil.framework.lang;
/**
* Assertion utility class that assists in validating arguments. Useful for identifying programmer errors early and
* clearly at runtime.
*
*
* This class is similar to TestNG's assertion library. If an argument value is deemed invalid, an
* {@link AssertionError} is thrown.
*
*/
public abstract class Assert
{
/**
* Assert a boolean expression, throwing AssertionError
if the test result is
* false
.
*
*
* Assert.isTrue(count > 0, "The value should be greater than zero");
*
*
* @param expression a boolean expression
* @param message the exception message to use if the assertion fails
* @throws AssertionError if expression is false
*/
public static void isTrue(boolean expression, String message)
{
if (!expression)
{
throw new AssertionError(message);
}
}
/**
* Assert a boolean expression, throwing AssertionError
if the test result is
* false
.
*
*
* Assert.isTrue(count > 0);
*
*
* @param expression a boolean expression
* @throws AssertionError if expression is false
*/
public static void isTrue(boolean expression)
{
isTrue(expression, "Assertion failed - this expression must be true");
}
/**
* Assert that an object is null
.
*
*
* Assert.isNull(value, "The value must be null");
*
*
* @param object the object to check
* @param message the exception message to use if the assertion fails
* @throws AssertionError if the object is not null
*/
public static void isNull(Object object, String message)
{
if (object != null)
{
throw new AssertionError(message);
}
}
/**
* Assert that an object is null
.
*
*
* Assert.isNull(value);
*
*
* @param object the object to check
* @throws AssertionError if the object is not null
*/
public static void isNull(Object object)
{
isNull(object, "Assertion failed - the object argument must be null");
}
/**
* Assert that an object is not null
.
*
*
* Assert.notNull(clazz, "The class must not be null");
*
*
* @param object the object to check
* @param message the exception message to use if the assertion fails
* @throws AssertionError if the object is null
*/
public static void notNull(Object object, String message)
{
if (object == null)
{
throw new AssertionError(message);
}
}
/**
* Assert that an object is not null
.
*
*
* Assert.notNull(clazz);
*
*
* @param object the object to check
* @throws AssertionError if the object is null
*/
public static void notNull(Object object)
{
notNull(object, "Assertion failed - this argument is required; it must not be null");
}
}