/*
 * @author Ranides Atterwim <ranides@gmail.com>
 * @copyright Ranides Atterwim
 * @license WTFPL
 * @url http://ranides.net/projects/assira
 */
package net.ranides.assira.reflection.util;

import net.ranides.assira.reflection.mock.ForMemberUtils;
import org.junit.Test;
import static org.junit.Assert.*;

/**
 *
 * @author Ranides Atterwim <ranides@gmail.com>
 */
public class ClassUtilsTest {
    
    public ClassUtilsTest() {
    }

    @Test
    public void testModifiers() throws Exception {
        
        assertTrue( ClassUtils.isAbstract(ForMemberUtils.ABSTRACT) );
        assertTrue( ClassUtils.isFinal(ForMemberUtils.FINAL) );
        assertTrue( ClassUtils.isInterface(ForMemberUtils.INTERFACE) );
        assertTrue( ClassUtils.isPrivate(ForMemberUtils.PRIVATE) );
        assertTrue( ClassUtils.isProtected(ForMemberUtils.PROTECTED) );
        assertTrue( ClassUtils.isPublic(ForMemberUtils.PUBLIC) );
        assertTrue( ClassUtils.isStatic(ForMemberUtils.STATIC) );
        
        assertFalse( ClassUtils.isAbstract(ForMemberUtils.NOTHING) );
        assertFalse( ClassUtils.isFinal(ForMemberUtils.NOTHING) );
        assertFalse( ClassUtils.isInterface(ForMemberUtils.NOTHING) );
        assertFalse( ClassUtils.isPrivate(ForMemberUtils.NOTHING) );
        assertFalse( ClassUtils.isProtected(ForMemberUtils.NOTHING) );
        assertFalse( ClassUtils.isPublic(ForMemberUtils.NOTHING) );
        assertFalse( ClassUtils.isStatic(ForMemberUtils.NOTHING) );
        
    }
    
}
