MentaContainer

Rev

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

package org.mentacontainer.impl;

import junit.framework.Assert;

import org.junit.Test;
import org.mentacontainer.Component;

public class MentaComponentTest {
       
        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 testComponent() {
               
                Component c1 = new MentaComponent(User.class).addInitValue("saoj");
               
                Component c2 = new MentaComponent(User.class).addProperty("username", "soliveira");
               
                User u1 = (User) c1.getInstance();
               
                User u2 = (User) c2.getInstance();
               
                Assert.assertTrue(u1 != u2);
               
                Assert.assertTrue(!u1.getUsername().equals(u2.getUsername()));
        }
       
        @Test
        public void testSingleton() {
               
                Component c1 = new MentaComponent(User.class, true).addInitValue("saoj");
               
                User u1 = (User) c1.getInstance();
               
                User u2 = (User) c1.getInstance();
               
                Assert.assertTrue(u1 == u2);
               
                Assert.assertTrue(u1.getUsername().equals(u2.getUsername()));
        }
       
}