package org.jboss.seam.test.mail.unit;
import org.jboss.seam.mail.ui.Header;
import org.testng.annotations.Test;
public class HeaderTest
{
@Test
public void testHeader()
{
String name = "foo";
String value = "bar";
Header header = new Header(name, value);
assert header.getSanitizedName().equals(name);
assert header.getSanitizedValue().equals(value);
}
@Test
public void testHeaderWithLineFeed()
{
String name = "foo\nnewline";
String value = "bar\nnewline";
Header header = new Header(name, value);
assert !header.getSanitizedName().equals(name);
assert !header.getSanitizedValue().equals(value);
assert "foo".equals(header.getSanitizedName());
assert "bar".equals(header.getSanitizedValue());
}
@Test
public void testHeaderWithCarrigeReturnLineBreak()
{
String name = "foo\r\nnewline";
String value = "bar\r\nnewline";
Header header = new Header(name, value);
assert !header.getSanitizedName().equals(name);
assert !header.getSanitizedValue().equals(value);
assert "foo".equals(header.getSanitizedName());
assert "bar".equals(header.getSanitizedValue());
}
@Test
public void testHeaderWithCarriageReturn()
{
String name = "foo\rnewline";
String value = "bar\rnewline";
Header header = new Header(name, value);
assert !header.getSanitizedName().equals(name);
assert !header.getSanitizedValue().equals(value);
assert "foo".equals(header.getSanitizedName());
assert "bar".equals(header.getSanitizedValue());
}
@Test
public void testHeaderWithFolding1()
{
String name = "header";
String value = "\"Joe & J. Harvey\" <ddd @ Org>,\n JJV @ BBN";
String sanitizedValue = "\"Joe & J. Harvey\" <ddd @ Org>, JJV @ BBN";
Header header = new Header(name, value);
assert header.getSanitizedName().equals(name);
assert header.getSanitizedValue().equals(sanitizedValue);
}
@Test
public void testHeaderWithFolding2()
{
String name = "header";
String value = "\"Joe & J. Harvey\"\n <ddd @ Org>, JJV\n @ BBN";
String sanitizedValue = "\"Joe & J. Harvey\" <ddd @ Org>, JJV @ BBN";
Header header = new Header(name, value);
assert header.getSanitizedName().equals(name);
assert header.getSanitizedValue().equals(sanitizedValue);
}
@Test
public void testHeaderWithFolding3()
{
String name = "header";
String value = "\"Joe &\n J. Harvey\" <ddd @ Org>, JJV @ BBN";
String sanitizedValue = "\"Joe & J. Harvey\" <ddd @ Org>, JJV @ BBN";
Header header = new Header(name, value);
assert header.getSanitizedName().equals(name);
assert header.getSanitizedValue().equals(sanitizedValue);
}
}