Skip to content

Commit

Permalink
configure own template resolver
Browse files Browse the repository at this point in the history
  • Loading branch information
Marc Gorzala committed Apr 8, 2024
1 parent 80ef83a commit f119a6d
Show file tree
Hide file tree
Showing 3 changed files with 71 additions and 42 deletions.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
package net.dancier.kikeriki.application;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.thymeleaf.TemplateEngine;
import org.thymeleaf.spring6.SpringTemplateEngine;
import org.thymeleaf.templatemode.TemplateMode;
import org.thymeleaf.templateresolver.ClassLoaderTemplateResolver;
import org.thymeleaf.templateresolver.ITemplateResolver;

import java.util.Collections;

@Configuration
public class ThymeLeafTemplateConfiguration {

private final static Logger log = LoggerFactory.getLogger(ThymeLeafTemplateConfiguration.class);

public static final String EMAIL_TEMPLATE_ENCODING = "UTF-8";

@Bean
public ClassLoaderTemplateResolver templateResolver() {
final ClassLoaderTemplateResolver templateResolver = new ClassLoaderTemplateResolver();
templateResolver.setOrder(Integer.valueOf(1));
templateResolver.setResolvablePatterns(Collections.singleton("text/*"));
templateResolver.setPrefix("/templates/mail/");
templateResolver.setSuffix(".txt");
templateResolver.setTemplateMode(TemplateMode.TEXT);
templateResolver.setCharacterEncoding(EMAIL_TEMPLATE_ENCODING);
templateResolver.setCacheable(false);
return templateResolver;
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
package net.dancier.kikeriki;

import net.dancier.kikeriki.application.CheckAndSendService;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.thymeleaf.TemplateEngine;
import org.thymeleaf.context.Context;

import java.util.HashMap;
import java.util.Locale;
import java.util.Map;

import static org.assertj.core.api.Assertions.assertThat;

public class ThymeleafSetupCorrectlyTest extends NeededInfrastructureBaseTestClass {

@Autowired
TemplateEngine templateEngine;

static Context context;

@BeforeAll
static void init() {
Map<String, Object> map = new HashMap<>();
map.put("unread_messages", 10);
context = new Context(Locale.GERMANY, map);
}

@Test
public void test() {
String result = templateEngine.process(CheckAndSendService.USER_INFO_MAIL, context);
assertThat(result).isNotBlank();
}

}

0 comments on commit f119a6d

Please sign in to comment.