Package br.com.caelum.tubaina.parser.html

Source Code of br.com.caelum.tubaina.parser.html.ImageTagTemplateTest

package br.com.caelum.tubaina.parser.html;

import static org.junit.Assert.assertEquals;

import java.io.IOException;

import org.junit.Before;
import org.junit.Test;

import br.com.caelum.tubaina.ParseType;
import br.com.caelum.tubaina.SectionsManager;
import br.com.caelum.tubaina.builder.ChapterBuilder;
import br.com.caelum.tubaina.chunk.ImageChunk;
import br.com.caelum.tubaina.parser.Parser;

@SuppressWarnings("deprecation")
public class ImageTagTemplateTest {

  private ImageTagTemplate tag;
  private String imageWithSubtitle;
  private String imageWithoutSubtitle;

  @Before
  public void setUp() throws IOException {
    Parser parser = ParseType.HTML.getParser();
    tag = new ImageTagTemplate(parser);
    imageWithSubtitle = "<img src=\"$$RELATIVE$$/imagem.png\" id=\"imagem.png\" alt=\"Imagem de alguma coisa\" />\n<div><i>Fig. 0.1: Imagem de alguma coisa</i></div><br><br>";
    imageWithoutSubtitle = "<img src=\"$$RELATIVE$$/imagem.png\" id=\"imagem.png\" alt=\"imagem.png\" />\n<div><i>Fig. 0.1</i></div><br><br>";
  }

  @Test
  public void testFullImageTag() {
    ChapterBuilder.restartChapterCounter();
    ImageChunk chunk = makeChunk("imagem.png", "w=30 \"Imagem de alguma coisa\"", 30);
    String result = tag.parse(chunk, false);
    assertEquals(imageWithSubtitle, result);
  }

  @Test
  public void testImageTagWithoutBounds() {
    ChapterBuilder.restartChapterCounter();
    ImageChunk chunk = makeChunk("imagem.png", "\"Imagem de alguma coisa\"", 100);
    String result = tag.parse(chunk, false);
    assertEquals(imageWithSubtitle, result);
  }

  @Test
  public void testImageTagWithoutDesc() {
    ChapterBuilder.restartChapterCounter();
    ImageChunk chunk = makeChunk("imagem.png", "w=42", 42);
    String result = tag.parse(chunk, false);
    assertEquals(imageWithoutSubtitle, result);
  }
 
  @Test
  public void testImageTagWithPath() {
    ChapterBuilder.restartChapterCounter();
    ImageChunk chunk = makeChunk("some/path/imagem.png", "w=42", 42);
    String result = tag.parse(chunk, false);
    assertEquals(imageWithoutSubtitle, result);
  }
 
  @Test
  public void testImageTagWithPercentageSymbol() {
    ChapterBuilder.restartChapterCounter();
    ImageChunk chunk = makeChunk("some/path/imagem.png", "w=50%", 50);
    String result = tag.parse(chunk, false);
    assertEquals(imageWithoutSubtitle, result);
  }
 
  @Test
  public void testImageTagWithoutPercentageSymbol() {
    ChapterBuilder.restartChapterCounter();
    ImageChunk chunk = makeChunk("some/path/imagem.png", "w=50", 50);
    String result = tag.parse(chunk, true);
    String imageWithWidthWithoutPercentageSymbol = "<img src=\"$$RELATIVE$$/imagem.png\" id=\"imagem.png\" width='50%' alt=\"imagem.png\" />\n<div><i>Fig. 0.1</i></div><br><br>";
    assertEquals(imageWithWidthWithoutPercentageSymbol, result);
  }
 
  @Test
  public void shouldUseLabelAsId() throws Exception {
    ChapterBuilder.restartChapterCounter();
    ImageChunk chunk = makeChunk("imagem.png", "w=50 label=image-label", 50);
    String result = tag.parse(chunk, true);
      String imageUsingLabelAsId = "<img src=\"$$RELATIVE$$/imagem.png\" id=\"image-label\" width='50%' alt=\"imagem.png\" />\n<div><i>Fig. 0.1</i></div><br><br>";
    assertEquals(imageUsingLabelAsId, result);
  }
 
  @Test
  public void shouldParseTagsInsideCaption() throws Exception {
    ChapterBuilder.restartChapterCounter();
    ImageChunk chunk = makeChunk("imagem.png", "\"Configurações de zoom do Android 4 e do **Chrome** http://google.com.br/ Mobile\"", 50);
    String result = tag.parse(chunk, true);
    result.contains("<strong>");
    result.contains("href=\"http://google.com/\"");
  }
 
  private ImageChunk makeChunk(String path, String options, int width) {
    return new ImageChunk(path, options, width, 1, new SectionsManager());
  }
}
TOP

Related Classes of br.com.caelum.tubaina.parser.html.ImageTagTemplateTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.