/*
* Copyright (c) 2015 Tarun Gupta.
* Licensed under the simplified BSD license.
* See Documentation/Licenses/BSD-simplified.txt for more information.
*/
package com.isode.stroke.parser.payloadparsers;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import org.junit.Test;
import com.isode.stroke.elements.JingleFileTransferDescription;
import com.isode.stroke.elements.JingleFileTransferFileInfo;
import com.isode.stroke.parser.payloadparsers.JingleFileTransferDescriptionParser;
import com.isode.stroke.parser.payloadparsers.JingleFileTransferFileInfoParser;
import com.isode.stroke.parser.payloadparsers.PayloadsParserTester;
import com.isode.stroke.eventloop.DummyEventLoop;
import java.util.Date;
import com.isode.stroke.base.DateTime;
import com.isode.stroke.base.ByteArray;
import java.util.TimeZone;
public class JingleFileTransferDescriptionParserTest {
public JingleFileTransferDescriptionParserTest() {
TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
}
@Test
public void testParse_with_all_variables() {
DummyEventLoop eventLoop = new DummyEventLoop();
PayloadsParserTester parser = new PayloadsParserTester(eventLoop);
assertNotNull(parser.parse("2015-06-11T20:55:50ZIt is good." +
"MediaAAC" +
"Isaac513" +
""));
JingleFileTransferDescription description = (JingleFileTransferDescription)parser.getPayload();
assertNotNull(description);
JingleFileTransferFileInfo fileInfo = description.getFileInfo();
assertNotNull(fileInfo);
assertEquals("Isaac", fileInfo.getName());
assertEquals("It is good.", fileInfo.getDescription());
assertEquals("MediaAAC", fileInfo.getMediaType());
assertEquals(513L, fileInfo.getSize());
assertEquals(DateTime.dateToString(new Date(1434056150620L)), DateTime.dateToString(fileInfo.getDate()));
assertEquals(true, fileInfo.getSupportsRangeRequests());
assertEquals(566L, fileInfo.getRangeOffset());
assertEquals(new ByteArray(), fileInfo.getHash("MD5"));
}
@Test
public void testParse_with_Some_variables() {
DummyEventLoop eventLoop = new DummyEventLoop();
PayloadsParserTester parser = new PayloadsParserTester(eventLoop);
assertNotNull(parser.parse("It is good.MediaAAC" +
"Isaac"));
JingleFileTransferDescription description = (JingleFileTransferDescription)parser.getPayload();
assertNotNull(description);
JingleFileTransferFileInfo fileInfo = description.getFileInfo();
assertNotNull(fileInfo);
assertEquals("Isaac", fileInfo.getName());
assertEquals("It is good.", fileInfo.getDescription());
assertEquals("MediaAAC", fileInfo.getMediaType());
assertEquals(0L, fileInfo.getSize());
assertNull(fileInfo.getDate());
assertEquals(false, fileInfo.getSupportsRangeRequests());
assertEquals(0L, fileInfo.getRangeOffset());
assertEquals(new ByteArray(), fileInfo.getHash("MD5"));
}
}