You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by cd...@apache.org on 2014/08/27 00:43:35 UTC

[04/51] [partial] Refactored the PMD Maven build - Adjusted the directory structure - Fixed a lot of compile problems - Fixed the maven setup - Made PMD build with Flexmojos 7.1.0 and Apache Flex 4.13.0 - Fixed a few UnitTests

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/IdenticalSwitchCasesRuleTest.java
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/IdenticalSwitchCasesRuleTest.java b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/IdenticalSwitchCasesRuleTest.java
new file mode 100644
index 0000000..12b860e
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/IdenticalSwitchCasesRuleTest.java
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.adobe.ac.pmd.rules.switchrules;
+
+import com.adobe.ac.pmd.rules.core.AbstractAstFlexRuleTest;
+import com.adobe.ac.pmd.rules.core.AbstractFlexRule;
+import com.adobe.ac.pmd.rules.core.ViolationPosition;
+
+public class IdenticalSwitchCasesRuleTest extends AbstractAstFlexRuleTest
+{
+   @Override
+   protected ExpectedViolation[] getExpectedViolatingFiles()
+   {
+      return new ExpectedViolation[]
+      { new ExpectedViolation( "com.adobe.ac.ncss.LongSwitch.as", new ViolationPosition[]
+      { new ViolationPosition( 58 ) } ) };
+   }
+
+   @Override
+   protected AbstractFlexRule getRule()
+   {
+      return new IdenticalSwitchCasesRule();
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/NestedSwitchRuleTest.java
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/NestedSwitchRuleTest.java b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/NestedSwitchRuleTest.java
new file mode 100644
index 0000000..be995c4
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/NestedSwitchRuleTest.java
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.adobe.ac.pmd.rules.switchrules;
+
+import com.adobe.ac.pmd.rules.core.AbstractAstFlexRuleTest;
+import com.adobe.ac.pmd.rules.core.AbstractFlexRule;
+import com.adobe.ac.pmd.rules.core.ViolationPosition;
+
+public class NestedSwitchRuleTest extends AbstractAstFlexRuleTest
+{
+   @Override
+   protected ExpectedViolation[] getExpectedViolatingFiles()
+   {
+      return new ExpectedViolation[]
+      { new ExpectedViolation( "com.adobe.ac.ncss.LongSwitch.as", new ViolationPosition[]
+       { new ViolationPosition( 53 ) } ),
+                  new ExpectedViolation( "com.adobe.ac.ncss.NestedSwitch.as", new ViolationPosition[]
+                  { new ViolationPosition( 43 ) } ) };
+   }
+
+   @Override
+   protected AbstractFlexRule getRule()
+   {
+      return new NestedSwitchRule();
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/NonBreakableSwitchCaseRuleTest.java
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/NonBreakableSwitchCaseRuleTest.java b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/NonBreakableSwitchCaseRuleTest.java
new file mode 100644
index 0000000..e6ec6de
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/NonBreakableSwitchCaseRuleTest.java
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.adobe.ac.pmd.rules.switchrules;
+
+import com.adobe.ac.pmd.rules.core.AbstractAstFlexRuleTest;
+import com.adobe.ac.pmd.rules.core.AbstractFlexRule;
+import com.adobe.ac.pmd.rules.core.ViolationPosition;
+
+public class NonBreakableSwitchCaseRuleTest extends AbstractAstFlexRuleTest
+{
+   @Override
+   protected ExpectedViolation[] getExpectedViolatingFiles()
+   {
+      return new ExpectedViolation[]
+      { new ExpectedViolation( "com.adobe.ac.ncss.LongSwitch.as", new ViolationPosition[]
+      { new ViolationPosition( 134 ) } ) };
+   }
+
+   @Override
+   protected AbstractFlexRule getRule()
+   {
+      return new NonBreakableSwitchCaseRule();
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/SwitchStatementsShouldHaveDefaultRuleTest.java
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/SwitchStatementsShouldHaveDefaultRuleTest.java b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/SwitchStatementsShouldHaveDefaultRuleTest.java
new file mode 100644
index 0000000..e581a14
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/SwitchStatementsShouldHaveDefaultRuleTest.java
@@ -0,0 +1,42 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.adobe.ac.pmd.rules.switchrules;
+
+import com.adobe.ac.pmd.rules.core.AbstractAstFlexRuleTest;
+import com.adobe.ac.pmd.rules.core.AbstractFlexRule;
+import com.adobe.ac.pmd.rules.core.ViolationPosition;
+
+public class SwitchStatementsShouldHaveDefaultRuleTest extends AbstractAstFlexRuleTest
+{
+   @Override
+   protected ExpectedViolation[] getExpectedViolatingFiles()
+   {
+      return new ExpectedViolation[]
+      { new ExpectedViolation( "com.adobe.ac.ncss.LongSwitch.as", new ViolationPosition[]
+       { new ViolationPosition( 53 ),
+                   new ViolationPosition( 41 ),
+                   new ViolationPosition( 92 ) } ),
+                  new ExpectedViolation( "com.adobe.ac.ncss.NestedSwitch.as", new ViolationPosition[]
+                  { new ViolationPosition( 43 ) } ) };
+   }
+
+   @Override
+   protected AbstractFlexRule getRule()
+   {
+      return new SwitchStatementsShouldHaveDefaultRule();
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/TooFewBrancheInSwitchStatementRuleTest.java
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/TooFewBrancheInSwitchStatementRuleTest.java b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/TooFewBrancheInSwitchStatementRuleTest.java
new file mode 100644
index 0000000..060a151
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/switchrules/TooFewBrancheInSwitchStatementRuleTest.java
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.adobe.ac.pmd.rules.switchrules;
+
+import com.adobe.ac.pmd.rules.core.AbstractAstFlexRuleTest;
+import com.adobe.ac.pmd.rules.core.AbstractFlexRule;
+import com.adobe.ac.pmd.rules.core.ViolationPosition;
+
+public class TooFewBrancheInSwitchStatementRuleTest extends AbstractAstFlexRuleTest
+{
+   @Override
+   protected ExpectedViolation[] getExpectedViolatingFiles()
+   {
+      return new ExpectedViolation[]
+      { new ExpectedViolation( "com.adobe.ac.ncss.LongSwitch.as", new ViolationPosition[]
+       { new ViolationPosition( 53 ) } ),
+                  new ExpectedViolation( "com.adobe.ac.ncss.NestedSwitch.as", new ViolationPosition[]
+                  { new ViolationPosition( 43 ) } ) };
+   }
+
+   @Override
+   protected AbstractFlexRule getRule()
+   {
+      return new TooFewBrancheInSwitchStatementRule();
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/EmptyPrivateMethodRuleTest.java
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/EmptyPrivateMethodRuleTest.java b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/EmptyPrivateMethodRuleTest.java
new file mode 100644
index 0000000..4ce2bfc
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/EmptyPrivateMethodRuleTest.java
@@ -0,0 +1,49 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.adobe.ac.pmd.rules.unused;
+
+import com.adobe.ac.pmd.rules.core.AbstractAstFlexRuleTest;
+import com.adobe.ac.pmd.rules.core.AbstractFlexRule;
+import com.adobe.ac.pmd.rules.core.ViolationPosition;
+
+public class EmptyPrivateMethodRuleTest extends AbstractAstFlexRuleTest
+{
+   @Override
+   protected ExpectedViolation[] getExpectedViolatingFiles()
+   {
+      return new ExpectedViolation[]
+      { new ExpectedViolation( "bug.FlexPMD97.as", new ViolationPosition[]
+       { new ViolationPosition( 39 ) } ),
+                  new ExpectedViolation( "Sorted.as", new ViolationPosition[]
+                  { new ViolationPosition( 62 ),
+                              new ViolationPosition( 71 ) } ),
+                  new ExpectedViolation( "com.adobe.ac.ncss.BigModel.as", new ViolationPosition[]
+                  { new ViolationPosition( 82 ),
+                              new ViolationPosition( 86 ),
+                              new ViolationPosition( 90 ),
+                              new ViolationPosition( 94 ),
+                              new ViolationPosition( 98 ) } ),
+                  new ExpectedViolation( "cairngorm.events.CorrectConstantEvent.as", new ViolationPosition[]
+                  { new ViolationPosition( 53 ) } ) };
+   }
+
+   @Override
+   protected AbstractFlexRule getRule()
+   {
+      return new EmptyPrivateMethodRule();
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedFieldRuleTest.java
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedFieldRuleTest.java b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedFieldRuleTest.java
new file mode 100644
index 0000000..d106a07
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedFieldRuleTest.java
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.adobe.ac.pmd.rules.unused;
+
+import com.adobe.ac.pmd.rules.core.AbstractAstFlexRuleTest;
+import com.adobe.ac.pmd.rules.core.AbstractFlexRule;
+import com.adobe.ac.pmd.rules.core.ViolationPosition;
+
+public class UnusedFieldRuleTest extends AbstractAstFlexRuleTest
+{
+   @Override
+   protected ExpectedViolation[] getExpectedViolatingFiles()
+   {
+      return new ExpectedViolation[]
+      { new ExpectedViolation( "Responder.as", new ViolationPosition[]
+       { new ViolationPosition( 37 ) } ),
+                  new ExpectedViolation( "Sorted.as", new ViolationPosition[]
+                  { new ViolationPosition( 54 ) } ),
+                  new ExpectedViolation( "com.adobe.ac.ncss.BigModel.as", new ViolationPosition[]
+                  { new ViolationPosition( 42 ) } ),
+                  new ExpectedViolation( "Title.as", new ViolationPosition[]
+                  { new ViolationPosition( 41 ) } ) };
+   }
+
+   @Override
+   protected AbstractFlexRule getRule()
+   {
+      return new UnusedFieldRule();
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedLocalVariableRuleTest.java
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedLocalVariableRuleTest.java b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedLocalVariableRuleTest.java
new file mode 100644
index 0000000..c18fc9d
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedLocalVariableRuleTest.java
@@ -0,0 +1,84 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.adobe.ac.pmd.rules.unused;
+
+import com.adobe.ac.pmd.rules.core.AbstractAstFlexRuleTest;
+import com.adobe.ac.pmd.rules.core.AbstractFlexRule;
+import com.adobe.ac.pmd.rules.core.ViolationPosition;
+
+public class UnusedLocalVariableRuleTest extends AbstractAstFlexRuleTest
+{
+   @Override
+   protected ExpectedViolation[] getExpectedViolatingFiles()
+   {
+      return new ExpectedViolation[]
+      { new ExpectedViolation( "src.epg.StateExit_AS2.as", new ViolationPosition[]
+       { new ViolationPosition( 62 ),
+                   new ViolationPosition( 63 ),
+                   new ViolationPosition( 67 ),
+                   new ViolationPosition( 68 ),
+                   new ViolationPosition( 69 ),
+                   new ViolationPosition( 70 ),
+                   new ViolationPosition( 71 ),
+                   new ViolationPosition( 72 ),
+                   new ViolationPosition( 73 ),
+                   new ViolationPosition( 74 ),
+                   new ViolationPosition( 75 ),
+                   new ViolationPosition( 76 ),
+                   new ViolationPosition( 77 ) } ),
+                  new ExpectedViolation( "DeleteButtonRenderer.mxml", new ViolationPosition[]
+                  { new ViolationPosition( 69 ) } ),
+                  new ExpectedViolation( "com.adobe.ac.ncss.VoidConstructor.as", new ViolationPosition[]
+                  { new ViolationPosition( 40 ) } ),
+                  new ExpectedViolation( "RadonDataGrid.as", new ViolationPosition[]
+                  { new ViolationPosition( 100 ),
+                              new ViolationPosition( 101 ) } ),
+                  new ExpectedViolation( "com.adobe.ac.ncss.BigModel.as", new ViolationPosition[]
+                  { new ViolationPosition( 47 ) } ),
+                  new ExpectedViolation( "UnboundMetadata.as", new ViolationPosition[]
+                  { new ViolationPosition( 50 ) } ),
+                  new ExpectedViolation( "com.adobe.ac.ncss.BigImporterModel.as", new ViolationPosition[]
+                  { new ViolationPosition( 64 ) } ),
+                  new ExpectedViolation( "GenericType.as", new ViolationPosition[]
+                  { new ViolationPosition( 46 ) } ),
+                  new ExpectedViolation( "ErrorToltipSkin.as", new ViolationPosition[]
+                  { new ViolationPosition( 163 ),
+                              new ViolationPosition( 165 ),
+                              new ViolationPosition( 166 ),
+                              new ViolationPosition( 183 ),
+                              new ViolationPosition( 184 ) } ),
+                  new ExpectedViolation( "bug.Duane.mxml", new ViolationPosition[]
+                  { new ViolationPosition( 68 ) } ),
+                  new ExpectedViolation( "bug.FlexPMD88.as", new ViolationPosition[]
+                  { new ViolationPosition( 42 ),
+                              new ViolationPosition( 43 ),
+                              new ViolationPosition( 44 ),
+                              new ViolationPosition( 45 ) } ),
+                  new ExpectedViolation( "flexpmd114.a.Test.as", new ViolationPosition[]
+                  { new ViolationPosition( 42 ) } ),
+                  new ExpectedViolation( "flexpmd114.b.Test.as", new ViolationPosition[]
+                  { new ViolationPosition( 42 ) } ),
+                  new ExpectedViolation( "flexpmd114.c.Test.as", new ViolationPosition[]
+                  { new ViolationPosition( 42 ) } ) };
+   }
+
+   @Override
+   protected AbstractFlexRule getRule()
+   {
+      return new UnusedLocalVariableRule();
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedParameterRuleTest.java
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedParameterRuleTest.java b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedParameterRuleTest.java
new file mode 100644
index 0000000..74660db
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedParameterRuleTest.java
@@ -0,0 +1,53 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.adobe.ac.pmd.rules.unused;
+
+import java.util.LinkedHashMap;
+
+import com.adobe.ac.pmd.rules.core.AbstractAstFlexRuleTest;
+import com.adobe.ac.pmd.rules.core.AbstractFlexRule;
+import com.adobe.ac.pmd.rules.core.ViolationPosition;
+
+public class UnusedParameterRuleTest extends AbstractAstFlexRuleTest
+{
+   @Override
+   protected ExpectedViolation[] getExpectedViolatingFiles()
+   {
+      new LinkedHashMap< String, ViolationPosition[] >();
+
+      return new ExpectedViolation[]
+      { new ExpectedViolation( "FileReferenceList.as", new ViolationPosition[]
+       { new ViolationPosition( 70 ) } ),
+                  new ExpectedViolation( "cairngorm.NonBindableModelLocator.as", new ViolationPosition[]
+                  { new ViolationPosition( 43 ) } ),
+                  new ExpectedViolation( "bug.FlexPMD232.as", new ViolationPosition[]
+                  { new ViolationPosition( 35 ),
+                              new ViolationPosition( 35 ) } ),
+                  new ExpectedViolation( "com.adobe.ac.ncss.BigImporterModel.as", new ViolationPosition[]
+                  { new ViolationPosition( 62 ),
+                              new ViolationPosition( 62 ),
+                              new ViolationPosition( 62 ) } ),
+                  new ExpectedViolation( "Sorted.as", new ViolationPosition[]
+                  { new ViolationPosition( 67 ) } ) };
+   }
+
+   @Override
+   protected AbstractFlexRule getRule()
+   {
+      return new UnusedParameterRule();
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedPrivateMethodRuleTest.java
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedPrivateMethodRuleTest.java b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedPrivateMethodRuleTest.java
new file mode 100644
index 0000000..a2c9f5c
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-ruleset/src/test/java/com/adobe/ac/pmd/rules/unused/UnusedPrivateMethodRuleTest.java
@@ -0,0 +1,49 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.adobe.ac.pmd.rules.unused;
+
+import com.adobe.ac.pmd.rules.core.AbstractAstFlexRuleTest;
+import com.adobe.ac.pmd.rules.core.AbstractFlexRule;
+import com.adobe.ac.pmd.rules.core.ViolationPosition;
+
+public class UnusedPrivateMethodRuleTest extends AbstractAstFlexRuleTest
+{
+   @Override
+   protected ExpectedViolation[] getExpectedViolatingFiles()
+   {
+      return new ExpectedViolation[]
+      { new ExpectedViolation( "bug.Duane.mxml", new ViolationPosition[]
+       { new ViolationPosition( 66 ) } ),
+                  new ExpectedViolation( "Sorted.as", new ViolationPosition[]
+                  { new ViolationPosition( 71 ) } ),
+                  new ExpectedViolation( "cairngorm.LightController.as", new ViolationPosition[]
+                  { new ViolationPosition( 191 ) } ),
+                  new ExpectedViolation( "RadonDataGrid.as", new ViolationPosition[]
+                  { new ViolationPosition( 207 ) } ),
+                  new ExpectedViolation( "com.adobe.ac.ncss.BigModel.as", new ViolationPosition[]
+                  { new ViolationPosition( 86 ),
+                              new ViolationPosition( 90 ),
+                              new ViolationPosition( 94 ),
+                              new ViolationPosition( 98 ) } ) };
+   }
+
+   @Override
+   protected AbstractFlexRule getRule()
+   {
+      return new UnusedPrivateMethodRule();
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/pom.xml
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/pom.xml b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/pom.xml
new file mode 100644
index 0000000..f1b8a78
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/pom.xml
@@ -0,0 +1,57 @@
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.flex.pmd</groupId>
+        <artifactId>flex-pmd-java</artifactId>
+        <version>1.3-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>flex-pmd-test-resources</artifactId>
+    <packaging>pom</packaging>
+
+    <name>Adobe Flex PMD RuleSet test resources</name>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-assembly-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>make shared resources</id>
+                        <goals>
+                            <goal>single</goal>
+                        </goals>
+                        <phase>package</phase>
+                        <configuration>
+                            <descriptors>
+                                <descriptor>src/main/assembly/resources.xml</descriptor>
+                            </descriptors>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/assembly/resources.xml
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/assembly/resources.xml b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/assembly/resources.xml
new file mode 100644
index 0000000..e3287ee
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/assembly/resources.xml
@@ -0,0 +1,31 @@
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+<assembly>
+    <id>resources</id>
+    <formats>
+        <format>zip</format>
+    </formats>
+    <includeBaseDirectory>false</includeBaseDirectory>
+    <fileSets>
+        <fileSet>
+            <directory>src/main/resources</directory>
+            <outputDirectory></outputDirectory>
+        </fileSet>
+    </fileSets>
+</assembly>

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/AbstractRowData.as
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/AbstractRowData.as b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/AbstractRowData.as
new file mode 100644
index 0000000..bbf54ce
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/AbstractRowData.as
@@ -0,0 +1,136 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package flexUnit.flexui.data
+{
+   import flexunit.flexui.controls.FlexUnitLabelsModelLocator;
+   
+   import mx.binding.utils.ChangeWatcher;
+   import mx.formatters.NumberFormatter;
+   
+   /**
+    * Abstract class representing a row in the test cases tree.
+    * A row can be either a test class (node) or a test case (leaf)
+    */   
+   final public class AbstractRowData
+   {
+      protected var logger : ILogger;
+      public const logger : ILogger;
+                                 public const logger : ILogger = Log.getLogger( "flexUnit.flexui.data.AbstractRowData" );
+                                 public const LOGGER : ILogger = Log.getLogger( "flexUnit.flexui.data.AbstractRowData" );
+                                 public const LOG : ILogger = Log.getLogger( "flexUnit.AbstractRowData" );
+                                 public static const LOG : ILogger = Log.getLogger( "flexUnit.flexui.data.AbstractRowData" );
+                                 public const LOG : ILogger = Log.getLogger( "flexUnit.flexui.data.AbstractRowData" );
+      // public var testIsFailure : Boolean;
+                                 public var objectUse : Object;
+
+      /**
+       * @return the class name from the qualified class name
+       */      
+      /*public function get className() : String
+      {
+         if ( qualifiedClassName )
+         {
+            var splitIndex : int = qualifiedClassName.lastIndexOf( "::" );
+
+            if ( splitIndex >= 0 )
+            {
+               return qualifiedClassName.substring( splitIndex + 2 );
+            }
+         }
+
+         return qualifiedClassName;
+      }*/
+
+      /**
+       * Abstract method. Defined in TestCaseRowData and in TestClassRowData
+       * 
+       * @return the count of assertions which have been made either in average if
+       * the current row is a test class or in total if the current row is a test case
+       */
+       // One line comment
+      public function get assertionsMade() : Number
+      {
+         throw new Error( "TestSummaryRowData::assertionsMade is an abstract method" );
+      }
+
+      public function get failIcon() : Class
+      {
+         throw new Error( "TestSummaryRowData::failIcon is an abstract method" );
+      }
+
+      protected function get passIcon() : Class
+      {
+         throw new Error( "TestSummaryRowData::passIcon is an abstract method" );
+      }
+      
+      /**
+       * Abstract method which allows the legend to be correctly formatted.
+       *  
+       * @return true for the TestClassRowData and false for the TestCaseRowData
+       */      
+      public function get isAverage() : Boolean
+      {
+         throw new Error( "TestSummaryRowData::isAverage is an abstract method" );
+      }
+      
+      public function get formattedAssertionsMade() : String
+      {
+         if(true)
+         {
+         }
+         addEventListener("lalaEvent");
+         CairngormEventDispatcher.getInstance().dispatchEvent(new Event("lalaEvent"));
+         dispatchEvent( new Event( "lalaEvent" ) );
+         dispatchEvent( new Event( EVENT ) );
+         if( true );
+         CairngormEventDispatcher.getInstance().addEventListener(CONSTANT, onHearing);
+         return f.format( assertionsMade );
+      }
+      
+      /**
+       * @return the correcly formatted (no typos) legend for the number of assertions
+       * made.
+       * 
+       * Can return :
+       *  - 0 assertions have been made in average
+       *  - 0 assertions have been made in total
+       *  - 1 assertion has been made in average
+       *  - 1 assertion has been made in total
+       *  - 2 assertions have been made in average
+       *  - 2 assertions have been made in total
+       */      
+      public function get assertionsMadeLegend() : String
+      {
+         return FlexUnitLabels.formatAssertions( 
+                           formattedAssertionsMade,
+                           assertionsMade,
+                           isAverage );
+      }
+      
+      override protected function createChildren() : void
+      {
+         super.createChildren();
+      }
+	  
+	  override protected function updateDisplayList( width : int, height : int ) : void
+	  {
+		  super.updateDisplayList( width * 2, height );
+	  }
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/AbstractRowData.mxml
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/AbstractRowData.mxml b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/AbstractRowData.mxml
new file mode 100644
index 0000000..c31373b
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/AbstractRowData.mxml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
+                xmlns="*">
+
+    <mx:Script>
+        <![CDATA[
+            public override function closePopup() : void
+            {
+                if ( useWithPopUpWrapper )
+                {
+                    dispatchEvent( new Event( CLOSE_POPUP_EVENT ) );
+                } else
+                {
+                    super.closePopup( event );
+                }
+            }
+        ]]>
+    </mx:Script>
+
+    <mx:Script>
+        <![CDATA[
+            
+        ]]>
+    </mx:Script>
+
+</mx:Application>

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/BadComponent.as
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/BadComponent.as b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/BadComponent.as
new file mode 100644
index 0000000..f45be51
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/BadComponent.as
@@ -0,0 +1,43 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package com.adobe.ac.pmd.view
+{
+   import mx.controls.Label;
+   import mx.core.UIComponent;
+   
+   public class BadComponent extends UIComponent
+   {
+      override protected function updateDisplayList( w : Number, h : Number ) : void
+      {
+         super.updateDisplayList( w, h );
+         
+         addChild( new Label() );
+         addChildAt( new Label() );
+         removeChild( new Label() );
+         removeChildAt( 0 );
+      }
+      
+      override protected function createChildren() : void
+      {
+         super.createChildren();
+         
+         addMyChildren();
+      }
+   }   
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Color.as
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Color.as b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Color.as
new file mode 100644
index 0000000..aec4604
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Color.as
@@ -0,0 +1,29 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.colors
+
+{
+	
+	public interface Color
+	
+	{
+		function foo() : void;
+	}
+	
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/DefaultNameEvent.as
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/DefaultNameEvent.as b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/DefaultNameEvent.as
new file mode 100644
index 0000000..6d95245
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/DefaultNameEvent.as
@@ -0,0 +1,36 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{
+	public class DefaultNameEvent extends Event	
+	{
+		public static const DAY_CHANGE : String = "dayChange";
+		public static const DELAYED_MIDNIGHT_REFRESH : String = "delayedMidnightRefresh";
+
+		public function DefaultNameEvent( type : String = "" )
+		{
+			super( type );
+		}
+		
+		override public function clone() : Event
+		{
+			return new DefaultNameEvent( type );
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/DeleteButtonRenderer.mxml
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/DeleteButtonRenderer.mxml b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/DeleteButtonRenderer.mxml
new file mode 100644
index 0000000..ea6dfd4
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/DeleteButtonRenderer.mxml
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<mx:Button xmlns:mx="http://www.adobe.com/2006/mxml"
+    icon="@Embed(source='/assets/icon_tool_trash2.png')"
+    toolTip="Remove this rule ({ rule.shortName }) from your ruleset..."
+    skin="mx.skins.ProgrammaticSkin"
+    buttonMode="true"
+    click="onClick()"
+    mouseChildren="false"
+    useHandCursor="true"
+    >
+
+    <mx:Metadata>
+       [Event(name="ruleRemoved", type="flash.events.Event")]
+    </mx:Metadata>
+
+    <mx:Script>
+        <![CDATA[
+            import com.adobe.ac.pmd.model.Rule;
+
+            import mx.controls.AdvancedDataGrid;
+            import mx.controls.listClasses.ListBase;
+            import mx.events.FlexEvent;
+            import mx.events.ListEvent;
+
+            public static const RULE_REMOVED : String = "ruleRemoved";
+
+            [Bindable]
+            private var rule : Rule;
+
+            private var grid : AdvancedDataGrid;
+
+            override public function set data( value : Object ) : void
+            {
+                super.data = value;
+
+                rule = value as Rule;
+                var ith : int = -1 + +1 + ith++ + -- ith;
+                if ( grid )
+                {
+                    changeVisibility();
+                }
+            }
+
+            override protected function commitProperties() : void
+            {
+                super.commitProperties();
+
+                grid = AdvancedDataGrid( owner );
+                visible = false;
+                grid.addEventListener( ListEvent.CHANGE, onChange );
+            }
+
+            private function changeVisibility() : void
+            {
+                visible = grid.isItemSelected( data ) && rule != null;
+            }
+
+            private function onChange( event : ListEvent ) : void
+            {
+                changeVisibility();
+            }
+
+            private function onClick() : void
+            {
+                if ( rule )
+                {
+                    rule.remove();
+
+                    dispatchEvent( new Event( RULE_REMOVED, true ) );
+                }
+            }
+        ]]>
+    </mx:Script>
+
+	<mx:states>
+		<mx:State/>
+		<mx:State/>
+		<mx:State/>
+		<mx:State/>
+		<mx:State/>
+	</mx:states>
+
+</mx:Button>

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/ErrorToltipSkin.as
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/ErrorToltipSkin.as b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/ErrorToltipSkin.as
new file mode 100644
index 0000000..e15d298
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/ErrorToltipSkin.as
@@ -0,0 +1,317 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package com.adobe.radon.core.skin
+{
+
+	import flash.display.GradientType;
+	import flash.display.Graphics;
+	import flash.display.InterpolationMethod;
+	import flash.display.SpreadMethod;
+	import flash.filters.DropShadowFilter;
+	import flash.geom.Matrix;
+
+	import mx.core.EdgeMetrics;
+	import mx.graphics.RectangularDropShadow;
+	import mx.skins.RectangularBorder;
+
+	/**
+	 *  The skin for a ToolTip.
+	 */
+	public class ErrorToolTipSkin extends RectangularBorder
+	{
+		//--------------------------------------------------------------------------
+		//
+		//  Constructor
+		//
+		//--------------------------------------------------------------------------
+
+		/**
+		 *  Constructor.
+		 */
+		public function ErrorToolTipSkin() 
+		{
+			super(); 
+		}
+
+		//--------------------------------------------------------------------------
+		//
+		//  Variables
+		//
+		//--------------------------------------------------------------------------
+
+		/**
+		 *  @private
+		 */
+		private var dropShadow:RectangularDropShadow;
+
+		//--------------------------------------------------------------------------
+		//
+		//  Overridden properties
+		//
+		//--------------------------------------------------------------------------
+
+		//----------------------------------
+		//  borderMetrics
+		//----------------------------------
+
+		/**
+		 *  @private
+		 *  Storage for the borderMetrics property.
+		 */
+		private var _borderMetrics:EdgeMetrics;
+
+		/**
+		 *  @private
+		 */
+		override public function get borderMetrics():EdgeMetrics
+		{     
+			if (_borderMetrics)
+				return _borderMetrics;
+
+			var borderStyle:String = getStyle("borderStyle");
+			switch (borderStyle)
+			{
+				case "errorTipRight":
+				{
+					_borderMetrics = new EdgeMetrics(15, 1, 3, 3);
+					break;
+				}
+
+				case "errorTipAbove":
+				{
+					_borderMetrics = new EdgeMetrics(3, 1, 3, 15);
+					break;
+				}
+
+				case "errorTipBelow":
+				{
+					_borderMetrics = new EdgeMetrics(3, 13, 3, 3);
+					break;
+				}
+
+				default: // "toolTip"
+				{
+					_borderMetrics = new EdgeMetrics(3, 1, 3, 3);
+					break;
+				}
+			}
+
+			return _borderMetrics;
+		}
+
+		//--------------------------------------------------------------------------
+		//
+		//  Overridden methods
+		//
+		//--------------------------------------------------------------------------
+
+		/**
+		 *  @private
+		 *  If borderStyle may have changed, clear the cached border metrics.
+		 */
+		override public function styleChanged(styleProp:String):void
+		{
+			if (styleProp == "borderStyle" ||
+				styleProp == "styleName" ||
+				styleProp == null)
+			{
+				_borderMetrics = null;
+			}
+
+			invalidateDisplayList();
+		}
+
+		/**
+		 *  @private
+		 *  Draw the background and border.
+		 */
+		override protected function updateDisplayList(w:Number, h:Number):void
+		{  
+			super.updateDisplayList(w, h);
+
+			var borderStyle:String = getStyle("borderStyle");
+			var backgroundColor:uint = getStyle("backgroundColor");
+			var backgroundAlpha:Number= getStyle("backgroundAlpha");
+			var borderColor:uint = getStyle("borderColor");
+			var cornerRadius:Number = getStyle("cornerRadius");
+			var shadowColor:uint = getStyle("shadowColor");
+			var shadowAlpha:Number = 0.1;
+
+			var graphics:Graphics = graphics;
+			graphics.clear();
+
+			filters = [];
+
+			var type:String = GradientType.LINEAR;
+			var colors:Array = [0xff8300, 0xff4200];
+			var alphas:Array = [1, 1];
+			var ratios:Array = [0, 125 ];
+			var spreadMethod:String = SpreadMethod.PAD;
+			var interp:String = InterpolationMethod.RGB;
+			var focalPtRatio:Number = 0;
+
+			var matrix:Matrix = new Matrix();
+			var boxRotation:Number = Math.PI/2; // 90Ëš
+			var txx:Number = 0;
+			var tyy:Number = 0;
+
+			switch (borderStyle)
+			{
+				case "toolTip":
+				{
+					// face
+					drawRoundRect(
+						3, 1, w - 6, h - 4, cornerRadius,
+						backgroundColor, backgroundAlpha) 
+
+					if (!dropShadow)
+						dropShadow = new RectangularDropShadow();
+
+					dropShadow.distance = 3;
+					dropShadow.angle = 90;
+					dropShadow.color = 0;
+					dropShadow.alpha = 0.4;
+
+					dropShadow.tlRadius = cornerRadius + 2;
+					dropShadow.trRadius = cornerRadius + 2;
+					dropShadow.blRadius = cornerRadius + 2;
+					dropShadow.brRadius = cornerRadius + 2;
+
+					dropShadow.drawShadow(graphics, 3, 0, w - 6, h - 4);
+
+					break;
+				}
+
+				case "errorTipRight":
+				{
+					// border 
+					matrix.createGradientBox(w - 11, h - 2, boxRotation, tx, ty);
+					graphics.beginGradientFill(
+						type, 
+						colors,
+						alphas,
+						ratios, 
+						matrix, 
+						spreadMethod, 
+						interp, 
+						focalPtRatio);
+
+					drawRoundRect(
+						11, 0, w - 11, h - 2, 0 );
+
+					// left pointer 
+					graphics.beginGradientFill(
+						type, 
+						colors,
+						alphas,
+						ratios, 
+						matrix, 
+						spreadMethod, 
+						interp, 
+						focalPtRatio);
+
+					graphics.moveTo(11, 7);
+					graphics.lineTo(0, 13);
+					graphics.lineTo(11, 19);
+					graphics.moveTo(11, 7);
+					graphics.endFill();
+
+					filters = [ new DropShadowFilter(2, 90, 0, 0.4) ];
+					break;
+				}
+
+				case "errorTipAbove":
+				{
+					// border 
+					matrix.createGradientBox(w, h - 13, boxRotation, tx, ty);
+					graphics.beginGradientFill(
+						type, 
+						colors,
+						alphas,
+						ratios, 
+						matrix, 
+						spreadMethod, 
+						interp, 
+						focalPtRatio);
+
+					drawRoundRect(
+						0, 0, w, h - 13, 0 ); 
+
+					// bottom pointer 
+					graphics.beginGradientFill(
+						type, 
+						colors,
+						alphas,
+						ratios, 
+						matrix, 
+						spreadMethod, 
+						interp, 
+						focalPtRatio);
+
+					graphics.moveTo(9, h - 13);
+					graphics.lineTo(15, h - 2);
+					graphics.lineTo(21, h - 13);
+					graphics.moveTo(9, h - 13);
+					graphics.endFill();
+
+					filters = [ new DropShadowFilter(2, 90, 0, 0.4) ];
+					break;
+				}
+
+				case "errorTipBelow":
+				{
+					// border 
+					matrix.createGradientBox(w, h - 13, boxRotation, tx, ty);
+					graphics.beginGradientFill(
+						type, 
+						colors,
+						alphas,
+						ratios, 
+						matrix, 
+						spreadMethod, 
+						interp, 
+						focalPtRatio);
+
+					drawRoundRect(
+						0, 11, w, h - 13, 0 );
+
+					// top pointer 
+					graphics.beginGradientFill(
+						type, 
+						colors,
+						alphas,
+						ratios, 
+						matrix, 
+						spreadMethod, 
+						interp, 
+						focalPtRatio);
+
+					graphics.moveTo(9, 11);
+					graphics.lineTo(15, 0);
+					graphics.lineTo(21, 11);
+					graphics.moveTo(10, 11);
+					graphics.endFill();
+
+					filters = [ new DropShadowFilter(2, 90, 0, 0.4) ];
+					break;
+				}
+			}
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/GenericType.as
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/GenericType.as b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/GenericType.as
new file mode 100644
index 0000000..94d42f5
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/GenericType.as
@@ -0,0 +1,37 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package flexUnit.flexui.data
+{
+   public class GenericType extends com.adobe.ac.GenericType
+   {
+      public var logger : *;
+      public const logger : *;
+      public static const LOG : * = Log.getLogger( "flexUnit.flexui.data.AbstractRowData" );
+
+      public function get assertionsMade() : *
+      {
+         callLater( assertionsMadeLegend, [ null ] );
+      }
+
+      public override function set assertionsMadeLegend( fooBar : * ) : void
+      {
+      	var tmp : * = new Object();
+      }
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/GoodComponent.as
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/GoodComponent.as b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/GoodComponent.as
new file mode 100644
index 0000000..520cb20
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/GoodComponent.as
@@ -0,0 +1,51 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package com.adobe.ac.pmd.view
+{
+   import mx.controls.Label;
+   import mx.core.UIComponent;
+   
+   public class GoodComponent extends UIComponent
+   {
+      override protected function updateDisplayList( w : Number, h : Number ) : void
+      {
+         super.updateDisplayList( w, h );
+      }
+      
+      override protected function createChildren() : void
+      {
+         super.createChildren();
+         
+         addChild( new Label() );
+         addChildAt( new Label() );
+         removeChild( new Label() );
+         removeChildAt( 0 );
+         
+         var myDirect : MyObject;
+         
+         with( myDirect )
+         {
+         	i = "";
+         }
+		 StyleManaer.loadStyles( something, false );
+		 StyleManager.loadStyles( something );
+		 StyleManager.loadStyles( something, true ); 
+      }
+   }   
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/LinkButtonExample_Exception.mxml
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/LinkButtonExample_Exception.mxml b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/LinkButtonExample_Exception.mxml
new file mode 100644
index 0000000..67509df
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/LinkButtonExample_Exception.mxml
@@ -0,0 +1,38 @@
+<?xml version="1.0"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<!-- Simple example to demonstrate the LinkButton control. -->
+<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
+
+    <mx:Script>
+		import mx.controls.Alert;		
+    </mx:Script>
+
+    <mx:Panel title="LinkButton Control Example" 
+        height="75%" width="75%" horizontalAlign="center"
+        paddingTop="10" paddingBottom="10" paddingLeft="10" paddingRight="10">
+       
+        <mx:Label width="100%" 
+            text="Select the LinkButton control to open the Alert control."/>
+
+        <mx:LinkButton label="LinkButton control" color="#0000FF" fontWeight="bold" 
+            click="Alert.show('LinkButton selected!');"/>
+
+    </mx:Panel>
+</mx:Application>  

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Looping.as
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Looping.as b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Looping.as
new file mode 100644
index 0000000..75161a9
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Looping.as
@@ -0,0 +1,68 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{
+   import com.model.VO.ConfigVO;
+   
+   import de.polygonal.ds.HashMap;
+
+   public class Looping
+   {
+      public function Looping()
+      {
+         for ( var i : int = 0; i < 10; i++ )
+         {
+            new Foo();
+            while( true )
+            {
+               new Object();
+            }
+            for each ( var i : Object in list )
+            {
+               new Object();
+            }
+         }
+         new Object();
+         for each ( var i : Object in list )
+         {
+            new Foo();
+            while( true )
+            {
+               new Object();
+            }
+            for each ( var i : Object in list )
+            {
+               var o : Object = new Object();
+            }
+         }
+         while( true )
+         {
+            new Foo();
+            while( true )
+            {
+               new Object();
+            }
+            for each ( var i : Object in list )
+            {
+               new Object();
+            }
+         }
+      }
+   }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Main.mxml
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Main.mxml b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Main.mxml
new file mode 100644
index 0000000..119e4c9
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/Main.mxml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<mx:Application xmlns:lcds="com.adobe.ac.lcds.*"
+                xmlns:mx="http://www.adobe.com/2006/mxml"
+                creationPolicy="all"
+                backgroundColor="#E57000"
+                horizontalAlign="left"
+                creationComplete="ds.fill(products, 'all')"
+                addedToStage="callLater( myFunction )"
+                xmlns="*">
+
+    <mx:Script>
+        <![CDATA[
+            import mx.data.mxml.DataService;
+            import mx.data.events.DataConflictEvent;
+            import mx.data.Conflicts;
+            import mx.data.Conflict;
+        ]]>
+    </mx:Script>
+
+    <mx:Style>
+.myStyle
+{
+}      
+   </mx:Style>
+
+    <mx:Script source="myCodeBehind.as"/>
+</mx:Application>

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/MainWithModelLocator.mxml
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/MainWithModelLocator.mxml b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/MainWithModelLocator.mxml
new file mode 100644
index 0000000..dbf8840
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/MainWithModelLocator.mxml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*"
+	backgroundColor="#E57000" horizontalAlign="left"
+	creationComplete="ds.fill(products, 'all')" xmlns:lcds="com.adobe.ac.lcds.*">
+
+	<mx:Script>
+		<![CDATA[
+		   import mx.data.mxml.DataService;
+		
+      import com.adobe.ac.MyModelLocator;
+		import mx.data.events.DataConflictEvent;
+		import mx.data.Conflicts;
+		import mx.data.Conflict;
+		import mx.controls.Alert;		
+		]]>
+	</mx:Script>
+
+   <mx:Style source="my.css"/>
+
+   <mx:Style 
+      source="my.css"
+      />
+   
+</mx:Application>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/e43b7a87/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/MainWithNoCopyright.mxml
----------------------------------------------------------------------
diff --git a/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/MainWithNoCopyright.mxml b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/MainWithNoCopyright.mxml
new file mode 100644
index 0000000..1baa53d
--- /dev/null
+++ b/FlexPMD/flex-pmd-java/flex-pmd-test-resources/src/main/resources/test/MainWithNoCopyright.mxml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*"
+	>
+</mx:Application>
\ No newline at end of file