001: /*
002: * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
003: *
004: * Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
005: *
006: * The contents of this file are subject to the terms of either the GNU
007: * General Public License Version 2 only ("GPL") or the Common
008: * Development and Distribution License("CDDL") (collectively, the
009: * "License"). You may not use this file except in compliance with the
010: * License. You can obtain a copy of the License at
011: * http://www.netbeans.org/cddl-gplv2.html
012: * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
013: * specific language governing permissions and limitations under the
014: * License. When distributing the software, include this License Header
015: * Notice in each file and include the License file at
016: * nbbuild/licenses/CDDL-GPL-2-CP. Sun designates this
017: * particular file as subject to the "Classpath" exception as provided
018: * by Sun in the GPL Version 2 section of the License file that
019: * accompanied this code. If applicable, add the following below the
020: * License Header, with the fields enclosed by brackets [] replaced by
021: * your own identifying information:
022: * "Portions Copyrighted [year] [name of copyright owner]"
023: *
024: * Contributor(s):
025: *
026: * The Original Software is NetBeans. The Initial Developer of the Original
027: * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
028: * Microsystems, Inc. All Rights Reserved.
029: *
030: * If you wish your version of this file to be governed by only the CDDL
031: * or only the GPL Version 2, indicate your decision by adding
032: * "[Contributor] elects to include this software in this distribution
033: * under the [CDDL or GPL Version 2] license." If you do not indicate a
034: * single choice of license, a recipient has the option to distribute
035: * your version of this file under either the CDDL, the GPL Version 2 or
036: * to extend the choice of license to its licensees as provided above.
037: * However, if you add GPL Version 2 code and therefore, elected the GPL
038: * Version 2 license, then the option applies only if the new code is
039: * made subject to such option by the copyright holder.
040: */
041: package org.netbeans.test.syntax;
042:
043: import java.io.File;
044: import java.lang.reflect.InvocationTargetException;
045: import javax.swing.SwingUtilities;
046: import org.netbeans.test.web.FileObjectFilter;
047: import org.netbeans.test.web.RecurrentSuiteFactory;
048: import org.openide.filesystems.FileObject;
049: import junit.framework.Test;
050: import org.netbeans.api.db.explorer.ConnectionManager;
051: import org.netbeans.api.db.explorer.DatabaseConnection;
052:
053: /**
054: *
055: * @author ms113234
056: */
057: public class J2EETest extends CompletionTest {
058:
059: /** Creates a new instance of CompletionTesJ2EE */
060: public J2EETest(String name, FileObject testFileObj) {
061: super (name, testFileObj);
062: debug = false;
063: }
064:
065: public static Test suite() {
066: // find folder with test projects and define file objects filter
067: File datadir = new J2EETest(null, null).getDataDir();
068: File projectsDir = new File(datadir,
069: "J2EECompletionTestProjects");
070: FileObjectFilter filter = new FileObjectFilter() {
071:
072: public boolean accept(FileObject fo) {
073: String ext = fo.getExt();
074: String name = fo.getName();
075: return (name.startsWith("test") || name
076: .startsWith("Test"))
077: && (XML_EXTS.contains(ext)
078: || JSP_EXTS.contains(ext) || ext
079: .equals("java"));
080: }
081: };
082:
083: //DB Connecting - this must start with clear userdir, because it expect sample connection as the first one
084: int time = 0;
085: while ((ConnectionManager.getDefault().getConnections().length == 0)
086: && (time <= 12)) {
087: time++;
088: try {
089: Thread.currentThread().sleep(5000);
090: } catch (Exception e) {
091: e.printStackTrace(System.err);
092: }
093: }
094: if (time > 12) {
095: System.err.println("IMPOSSIBLE TO CONNECT THE DATABASE");
096: } else {
097: final DatabaseConnection dbconn = ConnectionManager
098: .getDefault().getConnections()[0];
099: try {
100: SwingUtilities.invokeAndWait(new Runnable() {
101:
102: public void run() {
103: ConnectionManager.getDefault()
104: .showConnectionDialog(dbconn);
105: }
106: });
107: } catch (InterruptedException e) {
108: } catch (InvocationTargetException e) {
109: }
110: }
111:
112: return RecurrentSuiteFactory.createSuite(J2EETest.class,
113: projectsDir, filter);
114: }
115: }
|