### Question:
ButtonMerchant { public static void reportOrder(@NonNull Context context, @NonNull Order order, @Nullable OrderListener orderListener) { buttonInternal.reportOrder(getButtonRepository(context), getDeviceManager(context), FeaturesImpl.getInstance(), order, orderListener); } private  ButtonMerchant(); static void configure(@NonNull Context context, @NonNull String applicationId); static void trackIncomingIntent(@NonNull Context context, @NonNull Intent intent); @Deprecated static void trackOrder(@NonNull Context context, @NonNull Order order,
            @Nullable UserActivityListener userActivityListener); static void reportOrder(@NonNull Context context, @NonNull Order order,
            @Nullable OrderListener orderListener); @Nullable static String getAttributionToken(@NonNull Context context); static void addAttributionTokenListener(@NonNull Context context,
            @NonNull AttributionTokenListener listener); static void removeAttributionTokenListener(@NonNull Context context,
            @NonNull AttributionTokenListener listener); static void clearAllData(@NonNull Context context); static void handlePostInstallIntent(@NonNull Context context, @NonNull
            PostInstallIntentListener listener); static Features features(); static ButtonUserActivity activity();  }### Answer:
@Test public void reportOrder_verifyButtonInternal() { Order order = mock(Order.class); OrderListener orderListener = mock(OrderListener.class); ButtonMerchant.reportOrder(context, order, orderListener); verify(buttonInternal).reportOrder(any(ButtonRepository.class), any(DeviceManager.class), any(Features.class), eq(order), eq(orderListener)); }