Springboot, Powermockito, не удается имитировать метод stati c - PullRequest
0 голосов
/ 14 июля 2020

Во-первых, я прошу прощения за то, что спросил исходный код.

Какой самый простой способ MOCK stati c method?

Все предложения, которые предоставляются по всему rnet не удается выполнить инициализацию

package com.example.demo;

import java.net.InetAddress;
import java.net.UnknownHostException;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {
    public static String getHostname() throws UnknownHostException {
        return InetAddress.getLocalHost().getHostName();
    }

    public static boolean getValid() throws UnknownHostException {
        System.out.println(getHostname());
        return false;
    }
    DemoApplication() {
        
    }
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

}

в исходном коде выше, я хочу протестировать метод getValid (), высмеивая getHostName ()

1 Ответ

0 голосов
/ 26 июля 2020

Решение Jmockit:

public Class DemoApplicationTest {
@Tested
public DemoApplication app;

@Test
public void testGetValid() {

  new Expectations(app) {{
    DemoApplication.getHostname();
    times=1;
    result = "example.org";
  }};

  final boolean res = DemoApplication.getValid();
  assertFalse(res);
}
...