⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 basiccodectest.java

📁 FMJ(freedom media for java)是java视频开发的新选择
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package net.sf.fmj.test.compat.sun;import javax.media.Buffer;import javax.media.Format;import javax.media.ResourceUnavailableException;import javax.media.format.RGBFormat;import javax.media.format.YUVFormat;import net.sf.fmj.test.tracing.TracingBuffer;import net.sf.fmj.test.tracing.TracingFormat;import junit.framework.TestCase;import com.sun.media.BasicCodec;/** *  * @author Ken Larson * */public class BasicCodecTest extends TestCase{	public void testIOFormats1()	{		final MyBasicCodec c = new MyBasicCodec();		assertEquals(c.doGetInputFormat(), null);		assertEquals(c.doGetOutputFormat(), null);		{			final Format f1 = new Format("abc");			final Format f1res = c.setInputFormat(f1);			assertTrue(f1 == f1res);			assertTrue(c.doGetInputFormat() == f1);			assertEquals(c.doGetOutputFormat(), null);					final Format f2 = new Format("xyz");			final Format f2res = c.setOutputFormat(f2);			assertTrue(f2 == f2res);			assertTrue(c.doGetInputFormat() == f1);			assertTrue(c.doGetOutputFormat() == f2);				}							}		public void testIOFormats2()	{		final MyBasicCodec c = new MyBasicCodec();				// TODO: any checking against supported i/o formats?		// TODO: any checking against getSupportedOutputFormats - does not appear to call.				assertTrue(c.getSupportedInputFormats().length == 0);		assertTrue(c.getOutputFormats().length == 0);				final Format[] fs = new Format[]{				new Format("abcd")		};		c.setOutputFormats(fs);		assertTrue(c.getOutputFormats() == fs);				{			final Format f1 = new Format("abc");			final Format f1res = c.setInputFormat(f1);			assertTrue(f1 == f1res);			assertTrue(c.doGetInputFormat() == f1);			assertEquals(c.doGetOutputFormat(), null);					final Format f2 = new Format("xyz");			final Format f2res = c.setOutputFormat(f2);			assertTrue(f2 == f2res);			assertTrue(c.doGetInputFormat() == f1);			assertTrue(c.doGetOutputFormat() == f2);				}			}		public void testArrayElementSize()	{		final MyBasicCodec c = new MyBasicCodec();		assertTrue(c.doGetArrayElementSize(byte[].class) == 1);		assertTrue(c.doGetArrayElementSize(int[].class) == 4);		assertTrue(c.doGetArrayElementSize(short[].class) == 2);		assertTrue(c.doGetArrayElementSize(long[].class) == 0);		assertTrue(c.doGetArrayElementSize(byte.class) == 0);						assertFalse(c.isOpened());			}		public void testOpened() throws ResourceUnavailableException	{		final MyBasicCodec c = new MyBasicCodec();		assertFalse(c.isOpened());		c.open();		assertTrue(c.isOpened());		c.close();		assertFalse(c.isOpened());		c.open();		assertTrue(c.isOpened());				{			final String s1 = c.dumpToString();			c.reset();			final String s2 = c.dumpToString();			assertEquals(s1, s2);		}				assertTrue(c.isOpened());		c.close();		assertFalse(c.isOpened());		{			final String s1 = c.dumpToString();			c.reset();			final String s2 = c.dumpToString();			assertEquals(s1, s2);		}		assertFalse(c.isOpened());							}		public void testReset() throws ResourceUnavailableException	{		final MyBasicCodec c = new MyBasicCodec();				// what does reset do?				final Format[] formats = new Format[] {null, new Format("abc")};		final boolean[] booleanValues = new boolean[] {true, false};				for (int i = 0; i < formats.length; ++i)		for (int j = 0; j < booleanValues.length; ++j)		for (int k = 0; k < booleanValues.length; ++k)		{			final Format f = formats[i];			final boolean open = booleanValues[j];			final boolean eom = booleanValues[k];					{				final String s1 = c.dumpToString();				c.reset();				final String s2 = c.dumpToString();				assertEquals(s1, s2);			}					c.setInputFormat(f);			{				final String s1 = c.dumpToString();				c.reset();				final String s2 = c.dumpToString();				assertEquals(s1, s2);			}					if (open)				c.open();			else				c.close();					{				final String s1 = c.dumpToString();				c.reset();				final String s2 = c.dumpToString();				assertEquals(s1, s2);			}						c.setPendingEOM(eom);			{				final String s1 = c.dumpToString();				c.reset();				final String s2 = c.dumpToString();				assertEquals(s1, s2);			}		}					}			public void testEOM() throws ResourceUnavailableException	{		// reset does not affect eom:		{			final MyBasicCodec c = new MyBasicCodec();			assertEquals(c.getPendingEOM(), false);			c.setPendingEOM(true);			assertEquals(c.getPendingEOM(), true);			{				final String s1 = c.dumpToString();				c.reset();				final String s2 = c.dumpToString();				assertEquals(s1, s2);			}			assertEquals(c.getPendingEOM(), true);		}				{			final MyBasicCodec c = new MyBasicCodec();			assertEquals(c.getPendingEOM(), false);			assertEquals(c.getPendingEOM(), false);			{				final String s1 = c.dumpToString();				c.reset();				final String s2 = c.dumpToString();				assertEquals(s1, s2);			}			assertEquals(c.getPendingEOM(), false);		}		//		 open does not affect eom:		{			final MyBasicCodec c = new MyBasicCodec();			assertEquals(c.getPendingEOM(), false);			c.setPendingEOM(true);			assertEquals(c.getPendingEOM(), true);			c.open();			assertEquals(c.getPendingEOM(), true);		}				{			final MyBasicCodec c = new MyBasicCodec();			assertEquals(c.getPendingEOM(), false);			assertEquals(c.getPendingEOM(), false);			c.open();			assertEquals(c.getPendingEOM(), false);		}		//		 close does not affect eom:		{			final MyBasicCodec c = new MyBasicCodec();			assertEquals(c.getPendingEOM(), false);			c.setPendingEOM(true);			assertEquals(c.getPendingEOM(), true);			c.close();			assertEquals(c.getPendingEOM(), true);		}				{			final MyBasicCodec c = new MyBasicCodec();			assertEquals(c.getPendingEOM(), false);			assertEquals(c.getPendingEOM(), false);			c.close();			assertEquals(c.getPendingEOM(), false);		}			}		public void testCheckFormat()	{		final MyBasicCodec c = new MyBasicCodec();		assertEquals(c.doCheckFormat(null), true);		assertEquals(c.doCheckFormat(new Format(null)), true);		assertEquals(c.doCheckFormat(new Format("xyz")), true);				c.setInputFormat(new RGBFormat());		assertEquals(c.doCheckFormat(null), true);		assertEquals(c.doCheckFormat(new YUVFormat()), true);				c.setInputFormats(new Format[]{new RGBFormat()});		assertEquals(c.doCheckFormat(null), true);		assertEquals(c.doCheckFormat(new YUVFormat()), true);				c.setOutputFormats(new Format[]{new RGBFormat()});		assertEquals(c.doCheckFormat(null), true);		assertEquals(c.doCheckFormat(new YUVFormat()), true);		c.setOutputFormat(new RGBFormat());		assertEquals(c.doCheckFormat(null), true);		assertEquals(c.doCheckFormat(new YUVFormat()), true);				{			final TracingFormat f = new TracingFormat("zzz");			c.doCheckFormat(f);			assertEquals(f.getStringBuffer().toString(), "");		}	}		public void testBufferEOM()	{		final MyBasicCodec c = new MyBasicCodec();		try		{			c.doIsEOM(null);			assertFalse(true);		}		catch (NullPointerException e)		{		}				final Buffer b = new Buffer();		assertFalse(c.doIsEOM(b));		assertFalse(c.getPendingEOM());		b.setEOM(true);		assertFalse(c.getPendingEOM());		assertTrue(c.doIsEOM(b));				assertFalse(c.getPendingEOM());				final TracingBuffer b2 = new TracingBuffer();		assertEquals(b2.getStringBuffer().toString(), "");				assertFalse(c.doIsEOM(b2));		assertEquals(b2.getStringBuffer().toString(), "isEOM\n");				c.setOutputFormat(new Format("zzz"));		c.doPropagateEOM(b2);		assertEquals(b2.getStringBuffer().toString(), "isEOM\nsetFormat(zzz)\nsetLength(0)\nsetOffset(0)\nsetEOM\n");				//System.out.println(b2.getStringBuffer().toString());		assertTrue(c.doIsEOM(b2));		assertEquals(b2.getStringBuffer().toString(), "isEOM\nsetFormat(zzz)\nsetLength(0)\nsetOffset(0)\nsetEOM\nisEOM\n");				assertFalse(c.getPendingEOM());				assertEquals(b2.getStringBuffer().toString(), "isEOM\nsetFormat(zzz)\nsetLength(0)\nsetOffset(0)\nsetEOM\nisEOM\n");		//System.out.println(b2.getStringBuffer().toString());			}		public void testUpdateOutput()	{		{			final MyBasicCodec c = new MyBasicCodec();			final TracingBuffer b = new TracingBuffer();			final Format f = new Format("abc");			c.doUpdateOutput(b, f, 10, 20);			assertEquals(b.getLength(), 10);			assertEquals(b.getOffset(), 20);			assertTrue(b.getFormat() == f);			//System.out.println(b.getStringBuffer().toString());			assertEquals(b.getStringBuffer().toString(), 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -