Updated version of the "conditionalOperatorConvertor" sample plugin.
authorAlexey <Alexey.Chursin@jetbrains.com>
Wed, 15 Sep 2010 11:09:21 +0000 (15:09 +0400)
committerAlexey <Alexey.Chursin@jetbrains.com>
Thu, 16 Sep 2010 08:03:30 +0000 (12:03 +0400)
12 files changed:
samples/conditionalOperatorConvertor/META-INF/plugin.xml
samples/conditionalOperatorConvertor/conditionalOperatorConvertor.iml
samples/conditionalOperatorConvertor/conditionalOperatorConvertor.ipr
samples/conditionalOperatorConvertor/source/com/intellij/codeInsight/intention/ConditionalOperatorConvertor.java
samples/conditionalOperatorConvertor/source/intentionDescriptions/ConditionalOperatorConvertor/after.java.template [moved from samples/conditionalOperatorConvertor/source/intentionDescriptions/Convert ternary operator to if statement/after.java.template with 100% similarity]
samples/conditionalOperatorConvertor/source/intentionDescriptions/ConditionalOperatorConvertor/before.java.template [moved from samples/conditionalOperatorConvertor/source/intentionDescriptions/Convert ternary operator to if statement/before.java.template with 100% similarity]
samples/conditionalOperatorConvertor/source/intentionDescriptions/ConditionalOperatorConvertor/description.html [new file with mode: 0644]
samples/conditionalOperatorConvertor/source/intentionDescriptions/Convert ternary operator to if statement/description.html [deleted file]
samples/conditionalOperatorConvertor/testData/before.template.after.java [new file with mode: 0644]
samples/conditionalOperatorConvertor/testData/before.template.java [new file with mode: 0644]
samples/conditionalOperatorConvertor/testSource/testPlugin/YourTest.java [new file with mode: 0644]
samples/conditionalOperatorConvertor/testSrc/com/intellij/codeInsight/ConditionalToIfTest.java [deleted file]

index f2cc0ab0e74ea28e13d05aa07055d12862eca25f..ceb6ce3046cdd541c6a78a7158899a556034a871 100644 (file)
@@ -1,4 +1,6 @@
+<!--
 <!DOCTYPE idea-plugin PUBLIC "Plugin/DTD" "http://plugins.intellij.net/plugin.dtd">
+-->
 <idea-plugin version="2">
     <name>Conditional Operator Converter</name>
     <id>ConditionalOperatorConverter</id>
@@ -7,13 +9,19 @@
     </description>
     <version>1.3</version>
     <vendor logo="/general/ijLogo.png">JetBrains</vendor>
+   <!--
     <idea-version since-build="2000"/>
+    -->
+   <!--
     <is-internal/>
+    -->
 
-    <extensions xmlns="com.intellij">
+    <extensions defaultExtensionNs="com.intellij">
       <intentionAction>
         <className>com.intellij.codeInsight.intention.ConditionalOperatorConvertor</className>
         <category>Conditional Operator</category>
+         <descriptionDirectoryName>ConditionalOperatorConvertor</descriptionDirectoryName>
+
       </intentionAction>
     </extensions>
 
index b33c9efa2fed9cdd456ffa296fd180ad252fd2f0..16a756ac2d471580ff470684125ab56af2a4b410 100644 (file)
@@ -1,16 +1,16 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<module version="4" relativePaths="true" type="PLUGIN_MODULE">
+<module relativePaths="true" type="PLUGIN_MODULE" version="4">
   <component name="DevKit.ModuleBuildProperties" url="file://$MODULE_DIR$/META-INF/plugin.xml" />
-  <component name="ModuleRootManager" />
-  <component name="NewModuleRootManager">
-    <output url="file://$MODULE_DIR$/classes" />
+  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_6" inherit-compiler-output="false">
+    <output url="file://$MODULE_DIR$/out" />
     <exclude-output />
     <content url="file://$MODULE_DIR$">
       <sourceFolder url="file://$MODULE_DIR$/source" isTestSource="false" />
+      <sourceFolder url="file://$MODULE_DIR$/testSource" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/META-INF" isTestSource="false" />
     </content>
-    <orderEntry type="inheritedJdk" />
+    <orderEntry type="jdk" jdkName="IDEA IC-96.1124" jdkType="IDEA JDK" />
     <orderEntry type="sourceFolder" forTests="false" />
-    <orderEntryProperties />
   </component>
 </module>
 
index e2f1d8c7b4c13767f7b94097024360bef6e34c6e..dca74c1122765e76eb9f905e6e4381c65efb79e5 100644 (file)
@@ -1,16 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project version="4" relativePaths="false">
+<project version="4">
   <component name="AntConfiguration">
     <defaultAnt bundledAnt="true" />
   </component>
-  <component name="CodeStyleSettingsManager">
-    <option name="PER_PROJECT_SETTINGS" />
-    <option name="USE_PER_PROJECT_SETTINGS" value="false" />
-  </component>
   <component name="CompilerConfiguration">
     <option name="DEFAULT_COMPILER" value="Javac" />
-    <option name="CLEAR_OUTPUT_DIRECTORY" value="false" />
-    <option name="DEPLOY_AFTER_MAKE" value="0" />
     <resourceExtensions>
       <entry name=".+\.(properties|xml|html|dtd|tld)" />
       <entry name=".+\.(gif|png|jpeg|jpg)" />
       <entry name="?*.png" />
       <entry name="?*.jpeg" />
       <entry name="?*.jpg" />
+      <entry name="?*.template" />
     </wildcardResourcePatterns>
+    <annotationProcessing enabled="false" useClasspath="true" />
+  </component>
+  <component name="CopyrightManager" default="">
+    <module2copyright />
   </component>
-  <component name="DataSourceManagerImpl" />
   <component name="DependenciesAnalyzeManager">
     <option name="myForwardDirection" value="false" />
   </component>
-  <component name="DependencyValidationManager" />
+  <component name="DependencyValidationManager">
+    <option name="SKIP_IMPORT_STATEMENTS" value="false" />
+  </component>
+  <component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" />
   <component name="EntryPointsManager">
     <entry_points />
   </component>
     <option name="OPEN_IN_BROWSER" value="false" />
     <option name="OUTPUT_DIRECTORY" />
   </component>
-  <component name="GUI Designer component loader factory" />
-  <component name="JavacSettings">
-    <option name="DEBUGGING_INFO" value="true" />
-    <option name="GENERATE_NO_WARNINGS" value="false" />
-    <option name="DEPRECATION" value="true" />
-    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
-    <option name="MAXIMUM_HEAP_SIZE" value="128" />
-  </component>
   <component name="JavadocGenerationManager">
     <option name="OUTPUT_DIRECTORY" />
     <option name="OPTION_SCOPE" value="protected" />
     <option name="OPTION_DEPRECATED_LIST" value="true" />
     <option name="OTHER_OPTIONS" value="" />
     <option name="HEAP_SIZE" />
+    <option name="LOCALE" />
     <option name="OPEN_IN_BROWSER" value="true" />
   </component>
-  <component name="JikesSettings">
-    <option name="JIKES_PATH" value="" />
-    <option name="DEBUGGING_INFO" value="true" />
-    <option name="DEPRECATION" value="true" />
-    <option name="GENERATE_NO_WARNINGS" value="false" />
-    <option name="IS_EMACS_ERRORS_MODE" value="true" />
-    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
-  </component>
   <component name="Palette2">
     <group name="Swing">
-      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false">
+      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
         <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
       </item>
-      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false">
+      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
         <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
       </item>
-      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false">
+      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
         <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
       </item>
-      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false">
+      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
         <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
       </item>
-      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false">
+      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
         <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
         <initial-values>
           <property name="text" value="Button" />
         </initial-values>
       </item>
-      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false">
+      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
         <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
         <initial-values>
           <property name="text" value="RadioButton" />
         </initial-values>
       </item>
-      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false">
+      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
         <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
         <initial-values>
           <property name="text" value="CheckBox" />
         </initial-values>
       </item>
-      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false">
+      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
         <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
         <initial-values>
           <property name="text" value="Label" />
         </initial-values>
       </item>
-      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false">
+      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
         <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
           <preferred-size width="150" height="-1" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false">
+      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
         <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
           <preferred-size width="150" height="-1" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false">
+      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
         <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
           <preferred-size width="150" height="-1" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false">
+      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
         <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
           <preferred-size width="150" height="50" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false">
+      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
         <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
           <preferred-size width="150" height="50" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false">
+      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
         <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
           <preferred-size width="150" height="50" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false">
+      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
         <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
       </item>
-      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false">
+      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
         <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
           <preferred-size width="150" height="50" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false">
+      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
         <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
           <preferred-size width="150" height="50" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false">
+      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
         <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
           <preferred-size width="150" height="50" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false">
+      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
         <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
           <preferred-size width="200" height="200" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false">
+      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
         <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
           <preferred-size width="200" height="200" />
         </default-constraints>
       </item>
-      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false">
+      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
         <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
       </item>
-      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false">
+      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
         <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
       </item>
+      <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+          <preferred-size width="-1" height="20" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+      </item>
     </group>
   </component>
   <component name="ProjectModuleManager">
       <module fileurl="file://$PROJECT_DIR$/conditionalOperatorConvertor.iml" filepath="$PROJECT_DIR$/conditionalOperatorConvertor.iml" />
     </modules>
   </component>
-  <component name="ProjectRootManager" version="2" assert-keyword="false" jdk-15="false" project-jdk-name="IDEA 3405" />
-  <component name="RmicSettings">
-    <option name="IS_EANABLED" value="false" />
-    <option name="DEBUGGING_INFO" value="true" />
-    <option name="GENERATE_NO_WARNINGS" value="false" />
-    <option name="GENERATE_IIOP_STUBS" value="false" />
-    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+  <component name="ProjectResources">
+    <default-html-doctype>http://www.w3.org/1999/xhtml</default-html-doctype>
+  </component>
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_6" assert-keyword="true" jdk-15="true" project-jdk-name="IDEA IC-96.1124" project-jdk-type="IDEA JDK">
+    <output url="file://$PROJECT_DIR$/out" />
+  </component>
+  <component name="VcsDirectoryMappings">
+    <mapping directory="" vcs="" />
   </component>
   <component name="copyright">
     <option name="body" value="/*&#10; * Copyright (c) $today.year Your Corporation. All Rights Reserved.&#10; */" />
     <option name="remove" value="true" />
     <option name="replace" value="2" />
   </component>
-  <component name="libraryTable" />
-  <component name="uidesigner-configuration">
-    <option name="INSTRUMENT_CLASSES" value="true" />
-    <option name="COPY_FORMS_RUNTIME_TO_OUTPUT" value="true" />
-  </component>
-  <UsedPathMacros />
 </project>
 
index 5078f3b4ff7ad9d26606491858637e3fa99274c6..ffee0ad54d4cab3b33dc40892592de3003ac9070 100644 (file)
@@ -49,7 +49,7 @@ import org.jetbrains.annotations.Nullable;
     final int offset = editor.getCaretModel().getOffset();
     final PsiElement element = file.findElementAt(offset);
     PsiConditionalExpression conditionalExpression = PsiTreeUtil.getParentOfType(element,
-                                                                                                            PsiConditionalExpression.class, false);
+                                                                                 PsiConditionalExpression.class, false);
     if (conditionalExpression == null) return;
     if (conditionalExpression.getThenExpression() == null || conditionalExpression.getElseExpression() == null) return;
 
diff --git a/samples/conditionalOperatorConvertor/source/intentionDescriptions/ConditionalOperatorConvertor/description.html b/samples/conditionalOperatorConvertor/source/intentionDescriptions/ConditionalOperatorConvertor/description.html
new file mode 100644 (file)
index 0000000..7a3a66c
--- /dev/null
@@ -0,0 +1,12 @@
+<html>
+<body>
+    <font face="verdana" size="-1">
+        This intention converts the ternary operator to the if statement. <br>
+        For example: <br>
+        the <i>(a > 0) ? return a;: return -a;</i> <br>
+        will be converted to the code:<br><i>
+        if (a > 0) { return a;}<br>
+        else {return -a;}</i>
+    </font>
+</body>
+</html>
\ No newline at end of file
diff --git a/samples/conditionalOperatorConvertor/source/intentionDescriptions/Convert ternary operator to if statement/description.html b/samples/conditionalOperatorConvertor/source/intentionDescriptions/Convert ternary operator to if statement/description.html
deleted file mode 100644 (file)
index 8795bad..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<html>
-<body>
-    <font face="verdana" size="-1">
-        This intention converts a ternary operator to an if statement.
-    </font>
-</body>
-</html>
\ No newline at end of file
diff --git a/samples/conditionalOperatorConvertor/testData/before.template.after.java b/samples/conditionalOperatorConvertor/testData/before.template.after.java
new file mode 100644 (file)
index 0000000..6682628
--- /dev/null
@@ -0,0 +1,11 @@
+public class X {
+  void f(boolean isMale) {
+    String title;
+      if (isMale) {
+          title = "Mr.";
+      } else {
+          title = "Ms.";
+      }
+      System.out.println("title = " + title);
+ }
+}
\ No newline at end of file
diff --git a/samples/conditionalOperatorConvertor/testData/before.template.java b/samples/conditionalOperatorConvertor/testData/before.template.java
new file mode 100644 (file)
index 0000000..74107ea
--- /dev/null
@@ -0,0 +1,6 @@
+public class X {
+  void f(boolean isMale) {
+    String title = isMale <caret>? "Mr." : "Ms.";
+    System.out.println("title = " + title);
+ }
+}
\ No newline at end of file
diff --git a/samples/conditionalOperatorConvertor/testSource/testPlugin/YourTest.java b/samples/conditionalOperatorConvertor/testSource/testPlugin/YourTest.java
new file mode 100644 (file)
index 0000000..c1d1064
--- /dev/null
@@ -0,0 +1,62 @@
+package testPlugin;
+
+import com.intellij.codeInsight.intention.IntentionAction;
+
+import com.intellij.testFramework.builders.JavaModuleFixtureBuilder;
+import com.intellij.testFramework.fixtures.*;
+import junit.framework.Assert;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: Alexey.Chursin
+ * Date: Sep 13, 2010
+ * Time: 9:35:50 PM
+ * To change this template use File | Settings | File Templates.
+ */
+
+public class YourTest {
+    protected CodeInsightTestFixture myFixture;
+    // Specify path to your test data
+    // e.g.  final String dataPath = "c:\\users\\john.doe\\idea\\community\\samples\\conditionalOperatorConvertor/testData";
+    final String dataPath = "c:\\users\\FirstName.LastName\\idea\\community\\samples\\conditionalOperatorConvertor/testData";
+
+    @Before
+
+    public void setUp() throws Exception {
+
+        final IdeaTestFixtureFactory fixtureFactory = IdeaTestFixtureFactory.getFixtureFactory();
+        final TestFixtureBuilder<IdeaProjectTestFixture> testFixtureBuilder = fixtureFactory.createFixtureBuilder();
+        myFixture = JavaTestFixtureFactory.getFixtureFactory().createCodeInsightFixture(testFixtureBuilder.getFixture());
+        myFixture.setTestDataPath(dataPath);
+        final JavaModuleFixtureBuilder builder = testFixtureBuilder.addModule(JavaModuleFixtureBuilder.class);
+
+        builder.addContentRoot(myFixture.getTempDirPath()).addSourceRoot("");
+        builder.setMockJdkLevel(JavaModuleFixtureBuilder.MockJdkLevel.jdk15);
+        myFixture.setUp();
+
+    }
+
+    @After
+    public void tearDown() throws Exception {
+        myFixture.tearDown();
+        myFixture = null;
+    }
+
+    protected void doTest(String testName, String hint) throws Throwable {
+        // Messages.showInfoMessage("Test started", "Info");
+        myFixture.configureByFile(testName + ".java");
+        final IntentionAction action = myFixture.findSingleIntention(hint);
+        Assert.assertNotNull(action);
+        myFixture.launchAction(action);
+        myFixture.checkResultByFile(testName + ".after.java");
+    }
+
+    @Test
+    public void test() throws Throwable {
+        doTest("before.template", "Convert ternary operator to if statement");
+    }
+
+}
diff --git a/samples/conditionalOperatorConvertor/testSrc/com/intellij/codeInsight/ConditionalToIfTest.java b/samples/conditionalOperatorConvertor/testSrc/com/intellij/codeInsight/ConditionalToIfTest.java
deleted file mode 100644 (file)
index 375c14c..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Created by IntelliJ IDEA.
- * User: mike
- * Date: Aug 22, 2002
- * Time: 2:58:42 PM
- * To change template for new class use 
- * Code Style | Class Templates options (Tools | IDE Options).
- */
-package com.intellij.codeInsight;
-
-import com.intellij.codeInsight.intention.ConditionalOperatorConvertor;
-import com.intellij.psi.codeStyle.CodeStyleSettings;
-import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
-import com.intellij.testFramework.LightCodeInsightTestCase;
-
-public class ConditionalToIfTest extends LightCodeInsightTestCase {
-  private ConditionalOperatorConvertor myAction;
-  private static final String BASE_PATH = "/codeInsight/conditionalToIf/";
-  private boolean myElseOnNewLine;
-
-  protected void setUp() throws Exception {
-    super.setUp();
-
-    myAction = new ConditionalOperatorConvertor();
-    CodeStyleSettings settings = CodeStyleSettingsManager.getSettings(getProject());
-    myElseOnNewLine = settings.ELSE_ON_NEW_LINE;
-    settings.ELSE_ON_NEW_LINE = true;
-  }
-
-  protected void tearDown() throws Exception {
-    CodeStyleSettings settings = CodeStyleSettingsManager.getSettings(getProject());
-    settings.ELSE_ON_NEW_LINE = myElseOnNewLine;
-
-    super.tearDown();
-  }
-
-  public void testAssign() throws Exception { doTest(); }
-
-  public void testDeclaration() throws Exception { doTest(); }
-
-
-  private void doTest() throws Exception {
-    configureByFile(BASE_PATH + getTestName(false) + ".java");
-    assertTrue(myAction.isAvailable(getProject(), getEditor(), getFile()));
-    myAction.invoke(getProject(), getEditor(), getFile());
-    checkResultByFile(BASE_PATH + getTestName(false) + "_after.java");
-  }
-
-}