@Test
public void onHandleIntentに正しくデータが入ったIntentを渡せばデータ保存とBroadcastが行われる() {

    //準備：SaveBmiServiceに渡すIntentを用意
    BmiValue bmiValue = mock(BmiValue.class);
    Intent intent = mock(Intent.class);
    when(intent.getSerializableExtra(SaveBmiService.PARAM_KEY_BMI_VALUE)).thenReturn(bmiValue);
    //準備：SaveBmiServiceの各メソッドは何もしないようにする
    SaveBmiService service = spy(new SaveBmiService());
    doReturn(false).when(service).saveToRemoteServer((BmiValue)any());
    doNothing().when(service).sendLocalBroadcast(anyBoolean());
    //テストとメソッド呼び出しの確認
    service.onHandleIntent(intent);
    verify(service, times(1)).sendLocalBroadcast(anyBoolean());
    verify(service, times(1)).saveToRemoteServer((BmiValue)any());
}