[278998] Clean up of IFunction interface and removal of some deprecated code
diff --git a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/ClassFileTests.java b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/ClassFileTests.java
index aa52f7d..c42a723 100644
--- a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/ClassFileTests.java
+++ b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/ClassFileTests.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2008 IBM Corporation and others.
+ * Copyright (c) 2000, 2009 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -150,31 +150,6 @@
 }
 
 /*
- * Ensure that the exception types of a binary method are correct.
- */
-public void testExceptionTypes1() throws JavaScriptModelException {
-	IType type = this.jarRoot.getPackageFragment("generic").getClassFile("X.class").getType();
-	IFunction method = type.getFunction("foo", new String[] {"TK;", "TV;"});
-	assertStringsEqual(
-		"Unexpected return type",
-		"Ljava.lang.Exception;\n",
-		method.getExceptionTypes());
-}
-
-/*
- * Ensure that the exception types of a binary method is correct.
- */
-public void testExceptionTypes2() throws JavaScriptModelException {
-	IType type = this.jarRoot.getPackageFragment("generic").getClassFile("X.class").getType();
-	IFunction method = type.getFunction("foo", new String[] {"Lgeneric.X<TT;>;"});
-	assertStringsEqual(
-		"Unexpected return type",
-		"Ljava.lang.RuntimeException;\n" + 
-		"TU;\n",
-		method.getExceptionTypes());
-}
-
-/*
  * Ensure that the categories for a class are correct.
  */
 public void testGetCategories01() throws CoreException, IOException {
diff --git a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/ExistenceTests.java b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/ExistenceTests.java
index 1f8de1b..38841e1 100644
--- a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/ExistenceTests.java
+++ b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/ExistenceTests.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2008 IBM Corporation and others.
+ * Copyright (c) 2000, 2009 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -361,24 +361,6 @@
 	}
 }
 /*
- * Ensure that an ITypeParameter exists if it exists in source.
- */
-public void testTypeParameter2() throws CoreException {
-	try {
-		createJavaProject("P");
-		createFile(
-			"P/X.js", 
-			"public class X {\n" +
-			"  <T extends String> void foo() {}\n" +
-			"}"
-		);
-		ITypeParameter typeParameter = getCompilationUnit("P/X.js").getType("X").getFunction("foo", new String[0]).getTypeParameter("T");
-		assertTrue("Type parameter should exist", typeParameter.exists()); 
-	} finally {
-		deleteProject("P");
-	}
-}
-/*
  * Ensure that an ITypeParameter doesn't exist if it doesn't exist in source.
  */
 public void testTypeParameter3() throws CoreException {
@@ -395,24 +377,6 @@
 	}
 }
 /*
- * Ensure that an ITypeParameter doesn't exist if it doesn't exist in source.
- */
-public void testTypeParameter4() throws CoreException {
-	try {
-		createJavaProject("P");
-		createFile(
-			"P/X.js", 
-			"public class X {\n" +
-			"  <T extends String> void foo() {}\n" +
-			"}"
-		);
-		ITypeParameter typeParameter = getCompilationUnit("P/X.js").getType("X").getFunction("foo", new String[0]).getTypeParameter("String");
-		assertTrue("Type parameter should not exist", !typeParameter.exists()); 
-	} finally {
-		deleteProject("P");
-	}
-}
-/*
  * Ensure that an ITypeParameter doesn't exist even if a member class with the same name exists in source.
  * (regression test for bug 73255 [1.5][reconciling] ClassCastException in SourceTypeElementInfo#getTypeParameterBounds)
  */
diff --git a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/GetSourceTests.java b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/GetSourceTests.java
index dcfa8d1..b38cc30 100644
--- a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/GetSourceTests.java
+++ b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/GetSourceTests.java
@@ -242,27 +242,6 @@
 	}
 	
 	/*
-	 * Ensures the name range for a type parameter is correct.
-	 */
-	public void testNameRangeTypeParameter2() throws CoreException {
-		try {
-			String cuSource = 
-				"package p;\n" +
-				"public class Y {\n" +
-				"  <T extends String, U extends StringBuffer & Runnable> void foo() {} \n" +
-				"}";
-			createFile("/P/p/Y.js", cuSource);
-			ITypeParameter typeParameter = getCompilationUnit("/P/p/Y.js").getType("Y").getFunction("foo", new String[0]).getTypeParameter("U");
-			assertSourceEquals(
-				"Unexpected source'", 
-				"U", 
-				getNameSource(cuSource, typeParameter));
-		} finally {
-			deleteFile("/P/p/Y.js");
-		}
-	}
-	
-	/*
 	 * Ensures the source for a type parameter is correct.
 	 */
 	public void testTypeParameter1() throws CoreException {
@@ -281,27 +260,6 @@
 			deleteFile("/P/p/Y.js");
 		}
 	}
-
-	/*
-	 * Ensures the source for a type parameter is correct.
-	 */
-	public void testTypeParameter2() throws CoreException {
-		try {
-			String cuSource = 
-				"package p;\n" +
-				"public class Y {\n" +
-				"  <T extends String, U extends StringBuffer & Runnable> void foo() {} \n" +
-				"}";
-			createFile("/P/p/Y.js", cuSource);
-			ITypeParameter typeParameter = getCompilationUnit("/P/p/Y.js").getType("Y").getFunction("foo", new String[0]).getTypeParameter("U");
-			assertSourceEquals(
-				"Unexpected source'", 
-				"U extends StringBuffer & Runnable", 
-				typeParameter.getSource());
-		} finally {
-			deleteFile("/P/p/Y.js");
-		}
-	}
 	
 	/**
 	 * Ensure the source for a field contains the modifiers, field
diff --git a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/MementoTests.java b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/MementoTests.java
index 8e69234..60885b9 100644
--- a/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/MementoTests.java
+++ b/tests/org.eclipse.wst.jsdt.core.tests.model/src/org/eclipse/wst/jsdt/core/tests/model/MementoTests.java
@@ -699,13 +699,4 @@
 		"=P/src<p{X.java[X]T",
 		typeParameter);
 }
-/*
- * Tests that a type parameter can be persisted and restored using its memento.
- */
-public void testTypeParameter2() {
-	ITypeParameter typeParameter = getCompilationUnit("/P/src/p/X.js").getType("X").getFunction("foo", new String[0]).getTypeParameter("T");
-	assertMemento(
-		"=P/src<p{X.java[X~foo]T",
-		typeParameter);
-}
 }