Author: markt Date: Tue Jul 16 22:39:37 2013 New Revision: 1503930 URL: http://svn.apache.org/r1503930 Log: New tests to ensure changes in coercion rules for nulls don't break any code that uses coerceToBoolean internally
Added: tomcat/trunk/test/org/apache/el/parser/TestAstAnd.java (with props) tomcat/trunk/test/org/apache/el/parser/TestAstChoice.java (with props) tomcat/trunk/test/org/apache/el/parser/TestAstNot.java (with props) tomcat/trunk/test/org/apache/el/parser/TestAstOr.java (with props) Added: tomcat/trunk/test/org/apache/el/parser/TestAstAnd.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/el/parser/TestAstAnd.java?rev=1503930&view=auto ============================================================================== --- tomcat/trunk/test/org/apache/el/parser/TestAstAnd.java (added) +++ tomcat/trunk/test/org/apache/el/parser/TestAstAnd.java Tue Jul 16 22:39:37 2013 @@ -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 org.apache.el.parser; + +import javax.el.ELProcessor; + +import org.junit.Assert; +import org.junit.Test; + +public class TestAstAnd { + + @Test + public void test01() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("true && true"); + Assert.assertEquals(Boolean.TRUE, result); + } + + @Test + public void test02() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("true && null"); + Assert.assertEquals(Boolean.FALSE, result); + } + + @Test + public void test03() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("null && true"); + Assert.assertEquals(Boolean.FALSE, result); + } + + @Test + public void test04() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("null && null"); + Assert.assertEquals(Boolean.FALSE, result); + } +} Propchange: tomcat/trunk/test/org/apache/el/parser/TestAstAnd.java ------------------------------------------------------------------------------ svn:eol-style = native Added: tomcat/trunk/test/org/apache/el/parser/TestAstChoice.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/el/parser/TestAstChoice.java?rev=1503930&view=auto ============================================================================== --- tomcat/trunk/test/org/apache/el/parser/TestAstChoice.java (added) +++ tomcat/trunk/test/org/apache/el/parser/TestAstChoice.java Tue Jul 16 22:39:37 2013 @@ -0,0 +1,32 @@ +/* + * 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.apache.el.parser; + +import javax.el.ELProcessor; + +import org.junit.Assert; +import org.junit.Test; + +public class TestAstChoice { + + @Test + public void test01() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("null?1:2"); + Assert.assertEquals(Long.valueOf(2), result); + } +} Propchange: tomcat/trunk/test/org/apache/el/parser/TestAstChoice.java ------------------------------------------------------------------------------ svn:eol-style = native Added: tomcat/trunk/test/org/apache/el/parser/TestAstNot.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/el/parser/TestAstNot.java?rev=1503930&view=auto ============================================================================== --- tomcat/trunk/test/org/apache/el/parser/TestAstNot.java (added) +++ tomcat/trunk/test/org/apache/el/parser/TestAstNot.java Tue Jul 16 22:39:37 2013 @@ -0,0 +1,46 @@ +/* + * 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.apache.el.parser; + +import javax.el.ELProcessor; + +import org.junit.Assert; +import org.junit.Test; + +public class TestAstNot { + + @Test + public void test01() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("!null"); + Assert.assertEquals(Boolean.TRUE, result); + } + + @Test + public void test02() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("!true"); + Assert.assertEquals(Boolean.FALSE, result); + } + + @Test + public void test03() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("!false"); + Assert.assertEquals(Boolean.TRUE, result); + } +} Propchange: tomcat/trunk/test/org/apache/el/parser/TestAstNot.java ------------------------------------------------------------------------------ svn:eol-style = native Added: tomcat/trunk/test/org/apache/el/parser/TestAstOr.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/el/parser/TestAstOr.java?rev=1503930&view=auto ============================================================================== --- tomcat/trunk/test/org/apache/el/parser/TestAstOr.java (added) +++ tomcat/trunk/test/org/apache/el/parser/TestAstOr.java Tue Jul 16 22:39:37 2013 @@ -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 org.apache.el.parser; + +import javax.el.ELProcessor; + +import org.junit.Assert; +import org.junit.Test; + +public class TestAstOr { + + @Test + public void test01() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("true || true"); + Assert.assertEquals(Boolean.TRUE, result); + } + + @Test + public void test02() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("true || null"); + Assert.assertEquals(Boolean.TRUE, result); + } + + @Test + public void test03() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("null || true"); + Assert.assertEquals(Boolean.TRUE, result); + } + + @Test + public void test04() { + ELProcessor processor = new ELProcessor(); + Object result = processor.eval("null || null"); + Assert.assertEquals(Boolean.FALSE, result); + } +} Propchange: tomcat/trunk/test/org/apache/el/parser/TestAstOr.java ------------------------------------------------------------------------------ svn:eol-style = native --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org