/sigmah/src/test/java/org/sigmah/server/report/generator/SiteDataBinderTest.java

http://sigma-h.googlecode.com/ · Java · 60 lines · 43 code · 13 blank · 4 comment · 0 complexity · 33eb04782437144182c91750b5d8a847 MD5 · raw file

  1. /*
  2. * All Sigmah code is released under the GNU General Public License v3
  3. * See COPYRIGHT.txt and LICENSE.txt.
  4. */
  5. package org.sigmah.server.report.generator;
  6. import com.google.inject.Inject;
  7. import org.junit.Assert;
  8. import org.junit.Test;
  9. import org.junit.runner.RunWith;
  10. import org.sigmah.server.dao.OnDataSet;
  11. import org.sigmah.server.dao.hibernate.HibernateSiteTableDAO;
  12. import org.sigmah.server.domain.SiteData;
  13. import org.sigmah.shared.dao.SiteTableDAO;
  14. import org.sigmah.shared.domain.User;
  15. import org.sigmah.test.InjectionSupport;
  16. import org.sigmah.test.MockHibernateModule;
  17. import org.sigmah.test.Modules;
  18. import javax.persistence.EntityManager;
  19. import java.util.List;
  20. import static org.sigmah.shared.dao.Filter.filter;
  21. @RunWith(InjectionSupport.class)
  22. @Modules({MockHibernateModule.class})
  23. @OnDataSet("/dbunit/sites-simple1.db.xml")
  24. public class SiteDataBinderTest {
  25. @Inject
  26. private EntityManager em;
  27. @Inject
  28. private HibernateSiteTableDAO dao;
  29. @Test
  30. public void test() {
  31. User owner = new User();
  32. owner.setId(1);
  33. List<SiteData> sites = dao.query(owner,
  34. filter().onSite(2),
  35. null, new SiteDataBinder(), SiteTableDAO.RETRIEVE_ALL, 0, -1);
  36. Assert.assertEquals("sites returned", 1, sites.size());
  37. SiteData site = sites.get(0);
  38. Assert.assertEquals("Ngshwe", site.getLocationName());
  39. Assert.assertNull(site.getLocationAxe());
  40. Assert.assertTrue("has coords", site.hasLatLong());
  41. Assert.assertEquals(1.323, site.getLongitude(), 0.001);
  42. Assert.assertEquals(28.232, site.getLatitude(), 0.001);
  43. Assert.assertEquals("partner", "NRC", site.getPartnerName());
  44. Assert.assertEquals("indicator 1", 3600, site.getIndicatorValue(1).intValue());
  45. Assert.assertEquals("indicator 2", 1200, site.getIndicatorValue(2).intValue());
  46. }
  47. }