JAL-1805 test envirionment separation
[jalview.git] / test / jalview / gui / JAL1353bugdemo.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3  * Copyright (C) $$Year-Rel$$ The Jalview Authors
4  * 
5  * This file is part of Jalview.
6  * 
7  * Jalview is free software: you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License 
9  * as published by the Free Software Foundation, either version 3
10  * of the License, or (at your option) any later version.
11  *  
12  * Jalview is distributed in the hope that it will be useful, but 
13  * WITHOUT ANY WARRANTY; without even the implied warranty 
14  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
15  * PURPOSE.  See the GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License
18  * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
19  * The Jalview Authors are detailed in the 'AUTHORS' file.
20  */
21 package jalview.gui;
22
23 import jalview.bin.Cache;
24
25 import java.awt.Dimension;
26 import java.awt.event.ActionEvent;
27 import java.awt.event.ActionListener;
28 import java.awt.event.MouseEvent;
29 import java.awt.event.MouseListener;
30
31 import javax.swing.JDesktopPane;
32 import javax.swing.JFrame;
33 import javax.swing.JInternalFrame;
34 import javax.swing.JMenu;
35 import javax.swing.JMenuItem;
36 import javax.swing.JTextArea;
37
38 import org.testng.annotations.AfterClass;
39 import org.testng.annotations.BeforeClass;
40 import org.testng.annotations.Test;
41
42 public class JAL1353bugdemo
43 {
44
45   @BeforeClass
46   public static void setUpBeforeClass() throws Exception
47   {
48   }
49
50   @AfterClass
51   public static void tearDownAfterClass() throws Exception
52   {
53   }
54
55   volatile boolean finish = false;
56
57   @Test(groups =
58   { "Functional" }, enabled = false)
59   public void test()
60   {
61     Cache.initLogger();
62     // final Desktop foo = new Desktop();
63     final JFrame cfoo = new JFrame("Crash Java");
64     final JDesktopPane foo = new JDesktopPane();
65     foo.setPreferredSize(new Dimension(600, 800));
66     cfoo.setSize(600, 800);
67     final JInternalFrame cont = new JInternalFrame("My Frame");
68     JTextArea evt;
69     cont.setPreferredSize(new Dimension(400, 300));
70     cont.add(evt = new JTextArea(
71             "Click here and drag text over this window to freeze java.\n\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\n"));
72     cont.pack();
73     foo.add("A frame", cont);
74     foo.setVisible(true);
75     foo.setEnabled(true);
76     foo.doLayout();
77     cfoo.add(foo);
78     final JMenu jm = new JMenu("Do");
79     JMenuItem jmi = new JMenuItem("this");
80     jm.add(jmi);
81     evt.addMouseListener(new MouseListener()
82     {
83
84       @Override
85       public void mouseReleased(MouseEvent e)
86       {
87       }
88
89       @Override
90       public void mousePressed(MouseEvent e)
91       {
92         // TODO Auto-generated method stub
93
94       }
95
96       @Override
97       public void mouseExited(MouseEvent e)
98       {
99         // TODO Auto-generated method stub
100
101       }
102
103       @Override
104       public void mouseEntered(MouseEvent e)
105       {
106         // TODO Auto-generated method stub
107
108       }
109
110       @Override
111       public void mouseClicked(MouseEvent e)
112       {
113         // JFrame parent = new JFrame();
114         // parent.setBounds(foo.getBounds());
115         // JPanel oo = new JPanel();
116         // parent.add(oo);
117         // oo.setVisible(true);
118         // parent.setVisible(true);
119         EditNameDialog end = new EditNameDialog("Sequence Name",
120                 "Sequence Description", "label 1", "Label 2",
121                 "Try and drag between the two text fields", foo);// );cont.getRootPane());
122         assert (end != null);
123         finish = true;
124       }
125     });
126     cont.setVisible(true);
127
128     jmi.addActionListener(new ActionListener()
129     {
130
131       @Override
132       public void actionPerformed(ActionEvent arg0)
133       {
134         EditNameDialog end = new EditNameDialog("Sequence Name",
135                 "Sequence Description", "label 1", "Label 2",
136                 "Try and drag between the two text fields", cont);
137         assert (end != null);
138         finish = true;
139       }
140     });
141     foo.setVisible(true);
142     cfoo.setVisible(true);
143     while (!finish)
144     {
145       try
146       {
147         Thread.sleep(100);
148       } catch (InterruptedException x)
149       {
150       }
151     }
152   }
153
154 }