MentaContainer

Rev

Rev 24 | Blame | Compare with Previous | Last modification | View Log | RSS feed

package org.mentacontainer.impl;

import java.lang.reflect.Method;

import junit.framework.Assert;

import org.junit.Test;
import org.mentacontainer.Dependency;

public class MentaDependencyTest {
       
        private static class User {
               
                private String username;
               
                public User() { }
               
                public User(String username) {
                        this.username = username;
                }
               
                public String getUsername() {
                        return username;
                }
               
                public void setUsername(String username) {
                        this.username = username;
                }
        }
       
        @Test
        public void testDependency() {
               
                Dependency d = new MentaDependency("username", String.class, "theUsername");
               
                Assert.assertEquals("username", d.getTarget());
               
                Assert.assertEquals(String.class, d.getType());
               
                Assert.assertEquals("theUsername", d.getSource());
               
                Method m = d.check(User.class);
               
                Assert.assertNotNull(m);
               
                Assert.assertEquals("setUsername", m.getName());
               
                Assert.assertEquals(String.class, m.getParameterTypes()[0]);
        }
}