1   package br.org.articulus.server.dao;
2   
3   import java.util.Date;
4   import java.util.List;
5   
6   import junit.framework.TestCase;
7   
8   import org.springframework.context.support.ClassPathXmlApplicationContext;
9   
10  import br.org.articulus.domain.Establishment;
11  import br.org.articulus.domain.Office;
12  import br.org.articulus.domain.Register;
13  import br.org.articulus.domain.Sector;
14  
15  
16  /**
17   * TestCase to RegisterDao class
18   * @author anderson
19   * @version 2.0
20   */
21  public class RegisterDaoTest extends TestCase {
22  	
23  	private ClassPathXmlApplicationContext ctx;
24  	private RegisterDao rd;
25  
26  	
27  	protected void setUp() throws Exception {
28  		ctx = new ClassPathXmlApplicationContext(new String[] {
29          	"applicationContext-hibernate.xml"});
30  		
31  		rd = (RegisterDao)ctx.getBean("registerDao");
32  	}
33  	
34  	
35  	/**
36  	 * Test a null save method
37  	 * @author anderson
38  	 * @version 2.0 
39  	 */
40  	public void testSave() {
41  		Establishment e = new Establishment();
42  		e.setName("Empresa");
43  		
44  		EstablishmentDao ed = (EstablishmentDao)ctx.getBean("establishmentDao");
45  		ed.save(e);
46  		
47  		Sector s = new Sector();
48  		s.setName("Setor");
49  		s.setIdEstablishment(e);
50  		
51  		SectorDao sd = (SectorDao)ctx.getBean("sectorDao");
52  		sd.save(s);
53  		
54  		Office o = new Office();
55  		o.setName("Cargo");
56  		o.setIdEstablishment(e);
57  		o.setIdSector(s);
58  		
59  		OfficeDao od = (OfficeDao)ctx.getBean("officeDao");
60  		od.save(o);
61  		
62  		Register r = new Register();
63  		r.setActive(true);
64  		r.setAddress("Endereco tal");
65  		r.setBirthday(new Date());
66  		r.setCity("Maringá");
67  		r.setComment("comentario");
68  		r.setEmail("andersonajx@gmail.com");
69  		r.setIdEstablishment(e);
70  		r.setIdOffice(o);
71  		r.setIdSector(s);
72  		r.setName("anderson clayton");
73  		r.setNeighborhood("Zona 3");
74  		r.setPhone(99468400);
75  		r.setPhoneScrap(30268266);
76  		r.setState("PR");
77  		r.setZipcode(87050190);
78  		
79  		rd.save(r);
80  		
81  		assertNotNull(r);
82  	}
83  	
84  	
85  	/**
86  	 * Test get method
87  	 * @author anderson
88  	 * @version 2.0
89  	 */
90  	@SuppressWarnings("unchecked")
91  	public void testGet() {
92  		List<Register> l = rd.getAll();
93  		
94  		Register r = rd.get(l.get(0).getId());
95  	
96  		assertNotNull(r);
97  	}
98  	
99  	
100 	/**
101 	 * Test update method
102 	 * @author anderson
103 	 * @version 2.0
104 	 */
105 	@SuppressWarnings("unchecked")
106 	public void testUpdate() {
107 		List<Register> l = rd.getAll();
108 		
109 		Register r = (Register)rd.get(l.get(0).getId());
110 		r.setName("Anderson Atualizado!");
111 		
112 		rd.update(r);
113 		
114 		assertNotNull(r);
115 	}
116 	
117 	
118 	/**
119 	 * Test getAll method
120 	 * @author anderson
121 	 * @version 2.0
122 	 */
123 	@SuppressWarnings("unchecked")
124 	public void testGetAll() {
125 		List<Register> all = rd.getAll();
126 		assertNotNull(all.get(0));
127 	}
128 	
129 	
130 	/**
131 	 * Test delete method
132 	 * @author anderson
133 	 * @version 2.0
134 	 */
135 	@SuppressWarnings("unchecked")
136 	public void testDelete() {
137 		List<Register> l = rd.getAll();
138 		
139 		Register r = rd.get(l.get(0).getId());
140 		
141 		//ud.delete(u);
142 		
143 		assertNotNull(r);
144 	}
145 }