groovy674_bug.groovy

来自「Groovy动态语言 运行在JVM中的动态语言 可以方便的处理业务逻辑变化大的业」· GROOVY 代码 · 共 56 行

GROOVY
56
字号
package groovy.bugs

/**
 *  Test to ensure all the right exceptions are thrown for all the right/wrong combinations of
 *  parentheses and no parameters for print and println.
 *
 *  @author Russel Winder
 *  @version $Revision: 3208 $
 */
class Groovy674_Bug extends GroovyTestCase {
  void testTopLevelPrintParenthesesNoParameter ( ) {
    try { ( new GroovyShell ( ) ).evaluate ( "print ( )" ) }
    catch ( GroovyRuntimeException gre ) { return }
    fail ( "Should have thrown GroovyRuntimeException" ) ;
  }
  void testTopLevelPrintlnParenthesesNoParameter ( ) {
    assertScript ( "println ( )" )
  }
  void testClosurePrintParenthesesNoParameter ( ) {
    try { ( new GroovyShell ( ) ).evaluate ( "[ 1 , 2 , 3 , 4 , 5 ].each { print ( ) }" ) }
    catch ( GroovyRuntimeException gre ) { return }
    fail ( "Should have thrown GroovyRuntimeException" ) ;
  }
  void testClosurePrintlnParenthesesNoParameter ( ) {
    assertScript ( "[ 1 , 2 , 3 , 4 , 5 ].each { println ( ) }" )
  }
  void testTopLevelPrintNoParenthesesParameter ( ) { assertScript ( "print ( '' )" ) }
  void testTopLevelPrintlnNoParenthesesParameter ( ) { assertScript ( "println ( '' )" ) }
  void testClosurePrintNoParenthesesParameter ( ) { assertScript ( "[ 1 , 2 , 3 , 4 , 5 ].each { print ( '' ) }" ) }
  void testClosurePrintlnNoParenthesesParameter ( ) { assertScript ( "[ 1 , 2 , 3 , 4 , 5 ].each { println ( '' ) }" ) }
  void testTopLevelPrintParenthesesParameter ( ) { assertScript ( "print ''" ) }
  void testTopLevelPrintlnParenthesesParameter ( ) { assertScript ( "println ''" ) }
  void testClosurePrintParenthesesParameter ( ) { assertScript ( "[ 1 , 2 , 3 , 4 , 5 ].each { print '' }" ) }
  void testClosurePrintlnParenthesesParameter ( ) { assertScript ( "[ 1 , 2 , 3 , 4 , 5 ].each { println '' }" ) }
  void testTopLevelPrintProperty ( ) {
    try { ( new GroovyShell ( ) ).evaluate ( "print" ) }
    catch ( MissingPropertyException mpe ) { return ; }
    fail ( "Should have thrown MissingPropertyException" ) ;
  }
  void testTopLevelPrintlnProperty  ( ) {
    try { ( new GroovyShell ( ) ).evaluate ( "println" ) }
    catch ( MissingPropertyException mpe ) { return ; }
    fail ( "Should have thrown MissingPropertyException" ) ;
  }
  void testInClosurePrintProperty  ( ) {
    try { ( new GroovyShell ( ) ).evaluate ( "[ 1 , 2 , 3 , 4 , 5 ].each { print }" ) }
    catch ( MissingPropertyException mpe ) { return ; }
    fail ( "Should have thrown MissingPropertyException" ) ;
  }
  void testInClosurePrintlnProperty  ( ) {
    try { ( new GroovyShell ( ) ).evaluate ( "[ 1 , 2 , 3 , 4 , 5 ].each { println }" ) }
    catch ( MissingPropertyException mpe ) { return ; }
    fail ( "Should have thrown MissingPropertyException" ) ;
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?