View Javadoc
1   /*
2    * #%L
3    * IsisFish
4    * 
5    * $Id: ResultInfoStorageTest.java 4291 2015-06-24 08:04:58Z echatellier $
6    * $HeadURL: https://svn.codelutin.com/isis-fish/tags/isis-fish-4.4.0.2/src/test/java/fr/ifremer/isisfish/datastore/ResultInfoStorageTest.java $
7    * %%
8    * Copyright (C) 2015 Ifremer, CodeLutin, Chatellier Eric
9    * %%
10   * This program is free software: you can redistribute it and/or modify
11   * it under the terms of the GNU General Public License as
12   * published by the Free Software Foundation, either version 3 of the 
13   * License, or (at your option) any later version.
14   * 
15   * This program is distributed in the hope that it will be useful,
16   * but WITHOUT ANY WARRANTY; without even the implied warranty of
17   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18   * GNU General Public License for more details.
19   * 
20   * You should have received a copy of the GNU General Public 
21   * License along with this program.  If not, see
22   * <http://www.gnu.org/licenses/gpl-3.0.html>.
23   * #L%
24   */
25  
26  package fr.ifremer.isisfish.datastore;
27  
28  import java.io.StringWriter;
29  import java.io.Writer;
30  import java.util.Date;
31  import java.util.HashMap;
32  import java.util.Map;
33  
34  import org.junit.Assert;
35  import org.junit.Before;
36  import org.junit.Test;
37  
38  import fr.ifremer.isisfish.AbstractIsisFishTest;
39  import fr.ifremer.isisfish.IsisFish;
40  import fr.ifremer.isisfish.datastore.CodeSourceStorage.Location;
41  import freemarker.template.Configuration;
42  import freemarker.template.Template;
43  
44  /**
45   * ResultInfoStorageTest.
46   */
47  public class ResultInfoStorageTest extends AbstractIsisFishTest {
48  
49      protected Configuration freemarkerConfiguration;
50  
51      @Before
52      public void setUp() throws Exception {
53          freemarkerConfiguration = getFreemarkerConfiguration();
54      }
55  
56      @Test
57      public void testNewResultWithCompilation() throws Exception {
58  
59          String fileName = "TestResult1";
60  
61          ResultInfoStorage resultInfoStorage = ResultInfoStorage.createResultInfo(fileName, Location.COMMUNITY);
62  
63          // get template
64          Template template = freemarkerConfiguration
65                  .getTemplate(ResultInfoStorage.RESULT_INFO_TEMPLATE);
66  
67          // context values
68          Map<String, Object> root = new HashMap<>();
69          root.put("name", fileName);
70          root.put("date", new Date());
71          root.put("author", IsisFish.config.getUserName());
72          root.put("email", IsisFish.config.getUserMail());
73  
74          // process template
75          Writer out = new StringWriter();
76          template.process(root, out);
77          out.flush();
78          String content = out.toString();
79  
80          resultInfoStorage.setContent(content);
81  
82          // 0 = compile success
83          int compileResult = resultInfoStorage.compile(false, null);
84          Assert.assertEquals(0, compileResult);
85      }
86  }