如何在控制器中模拟 public 方法

How to mock public methods inside controller

我有一个控制器,它有很多动作。在动作内部,它正在调用位于同一 class 中的其他方法。我怎样才能以 return 我想要的方式模拟这些方法。

SomeController{

    def action1={

       method1() //i want to mock this method. this is not a service method

       }

    public def method1(){
        //some code here
       }


    def action2={

       method2() // i want to mock this method
     }

    public def method2(){

       //some code here
     }



}// SomeController

我想模拟 method1() 和 method2() 这样它应该 return 我定义的东西。 预先感谢您的帮助!!

自己回答

 controller.metaClass.method1(){

  //define whatever require
  // some codes

 }

 controller.metaClass.method2(){

 // define whatever require
 // some code

 }

以上代码运行良好

感谢您的宝贵时间!!