/** * Copyright (c) 2005-2012 by Appcelerator, Inc. All Rights Reserved. * Licensed under the terms of the Eclipse Public License (EPL). * Please see the license.txt included with this distribution for details. * Any modifications to this file must keep this entire header intact. */ package org.python.pydev.core; import java.io.File; import org.python.pydev.shared_core.string.FastStringBuffer; import junit.framework.TestCase; public class ModulesKeyTest extends TestCase { public void testEquals() throws Exception { assertEquals(new ModulesKey("mod1", new File("test")), new ModulesKey("mod1", new File("test"))); assertEquals(new ModulesKey("mod1", null), new ModulesKey("mod1", null)); assertNotEquals(new ModulesKey("m", null), new ModulesKey("m2", null)); //consider only the name assertEquals(new ModulesKey("m", null), new ModulesKey("m", new File("test"))); } private void assertNotEquals(ModulesKey modulesKey, ModulesKey modulesKey2) { assertFalse(modulesKey.equals(modulesKey2)); } public void testToIo() throws Exception { ModulesKey key = new ModulesKey("bar.a", null); FastStringBuffer buf = new FastStringBuffer(); key.toIO(buf); ModulesKey newKey = ModulesKey.fromIO(buf.toString()); assertTrue(newKey.getClass() == ModulesKey.class); } public void testToIo2() throws Exception { ModulesKey key = new ModulesKey("bar.a", new File("f.py")); FastStringBuffer buf = new FastStringBuffer(); key.toIO(buf); ModulesKey newKey = ModulesKey.fromIO(buf.toString()); assertTrue(newKey.getClass() == ModulesKey.class); assertEquals(key.file, newKey.file); } public void testToIo3() throws Exception { ModulesKeyForZip key = new ModulesKeyForZip("bar.a", new File("f.py"), "ra", true); FastStringBuffer buf = new FastStringBuffer(); key.toIO(buf); ModulesKeyForZip newKey = (ModulesKeyForZip) ModulesKey.fromIO(buf.toString()); assertTrue(newKey.getClass() == ModulesKeyForZip.class); assertEquals(key.file, newKey.file); assertEquals(key.zipModulePath, "ra"); } public void testToIo4() throws Exception { ModulesKeyForZip key = new ModulesKeyForZip("bar.a", new File("f.py"), "", true); FastStringBuffer buf = new FastStringBuffer(); key.toIO(buf); ModulesKeyForZip newKey = (ModulesKeyForZip) ModulesKey.fromIO(buf.toString()); assertTrue(newKey.getClass() == ModulesKeyForZip.class); assertEquals(key.file, newKey.file); assertEquals(key.zipModulePath, ""); } }