Advertisement
aadddrr

Untitled

Nov 8th, 2018
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.27 KB | None | 0 0
  1. package org.jleaf.report.test;
  2.  
  3. import java.io.File;
  4. import java.io.FileOutputStream;
  5. import java.io.InputStream;
  6.  
  7. import org.jleaf.core.Dto;
  8. import org.jleaf.report.component.ReportConfigFactory;
  9. import org.jleaf.report.component.ReportDataProvider;
  10. import org.jleaf.report.component.ReportGenerator;
  11. import org.jleaf.report.util.IOUtil;
  12. import org.junit.Test;
  13. import org.junit.runner.RunWith;
  14. import org.slf4j.Logger;
  15. import org.slf4j.LoggerFactory;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.jdbc.core.JdbcTemplate;
  18. import org.springframework.test.context.ContextConfiguration;
  19. import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
  20. import org.springframework.test.context.transaction.TransactionConfiguration;
  21. import org.springframework.transaction.annotation.Transactional;
  22.  
  23. @RunWith(SpringJUnit4ClassRunner.class)
  24. @ContextConfiguration(locations = { "classpath:test-jleaf-report-context.xml" })
  25. @TransactionConfiguration(transactionManager = "transactionManager", defaultRollback = true)
  26. @Transactional
  27. public class TestReportGenerator {
  28.    
  29.     private static final Logger log = LoggerFactory
  30.             .getLogger(TestReportGenerator.class);
  31.    
  32.     @Autowired
  33.     JdbcTemplate jdbcTemplate;
  34.    
  35.     @Autowired
  36.     ReportDataProvider reportDataProvider;
  37.    
  38.     @Autowired
  39.     ReportConfigFactory reportConfigFactory;
  40.    
  41.     @Autowired
  42.     ReportGenerator reportGenerator;
  43.    
  44.     @Test
  45.     public void testSuccess(){
  46.         Dto inputDto = new Dto();
  47.         Dto headerDto = new Dto();
  48.         Dto bodyDto = new Dto();
  49.         Dto paramDto = new Dto();
  50.        
  51.         String datetime = "20170815100100";
  52.         String sessionId = "SESSIONID";
  53.         Long tenantId = 10L;
  54.         Long userId = 10L;
  55.         Long roleId = 10L;
  56.         Long invoiceArBalanceId = 11L;
  57.         String reportName = "ReportFuntionTest1";
  58.        
  59.        
  60.         headerDto.put("tenantLoginId", tenantId);
  61.         headerDto.put("roleLoginId", roleId);
  62.         headerDto.put("userLoginId", userId);
  63.         headerDto.put("datetime", datetime);
  64.         headerDto.put("sessionId", "Sessionsgdsg");
  65.         headerDto.put("userLoginName", "frediansah");
  66.         headerDto.put("roleLoginName", "Admin");
  67.  
  68.         paramDto.put("tenantId", tenantId);
  69.         paramDto.put("sessionId", sessionId);
  70.         paramDto.put("invoiceArBalanceId", invoiceArBalanceId);
  71.         paramDto.put("userId", userId);
  72.         paramDto.put("datetime", datetime);
  73.                
  74.         bodyDto.put("reportName", reportName);
  75.         bodyDto.put("fileName", "ReportFuntionTest1_01.xlsx");
  76.         bodyDto.put("params", paramDto);
  77.        
  78.         inputDto.put("header", headerDto);
  79.         inputDto.put("body", bodyDto);
  80.        
  81.         try{
  82.             String str = IOUtil.readResourceToString("scripts/testFunctionCaller.sql");
  83.             log.debug("execute script : "+str);
  84.             jdbcTemplate.execute(str);
  85.            
  86.  
  87.             InputStream is = reportGenerator.generateReport(
  88.                     reportConfigFactory.getConfig(reportName),
  89.                     inputDto);
  90.            
  91.            
  92.             log.debug("Input stream output : "+is);
  93.            
  94.             File output = new File("test-report-generatort.xlsx");
  95.             FileOutputStream fos = new FileOutputStream(output);
  96.            
  97.             byte[] buffer = new byte[256];
  98.             int read = 0;
  99.             while( (read = is.read( buffer ))!=-1 ){
  100.                 fos.write( buffer, 0, read );
  101.                 fos.flush();
  102.             }
  103.            
  104.             is.close();
  105.             fos.close();
  106.            
  107.         } catch(Exception e){
  108.             log.error("error", e);
  109.             org.junit.Assert.fail(e.toString());
  110.         }
  111.     }
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement