package com.avg.zaap.crashlibrary.crashlibmocks;

import com.avg.zaap.crashlibrary.CrashLibTests;
import com.avg.zaap.crashlibrary.config.CrashLibConfigAnnotations;
import com.avg.zaap.crashlibrary.config.EShowErrorType;
import com.avg.zaap.crashlibrary.offline.Connection;
import com.avg.zaap.crashlibrary.offline.Strategy;

/**
 * Class used in {@link CrashLibTests} when unit testing annotation.
 */
@SuppressWarnings("ResourceType")
@CrashLibConfigAnnotations(
        showErrorType = EShowErrorType.TOAST,
        errorDetails = CrashLibTests.ERROR_MESSAGE,
        syncProviders = {SyncProvider1.class, SyncProvider2.class},
        asyncProviders = {AsyncProvider1.class, AsyncProvider2.class},
        crashPublishers = {CrashPublisher1.class, CrashPublisher1.class},
        logger = MockedLogger.class,
        crashReportURL = CrashLibTests.MOCK_CRASH_REPORT_URL,
        crashUploadURL = CrashLibTests.MOCK_CRASH_UPLOAD_URL,
        capProductID = CrashLibTests.MOCK_CAP_PRODUCT_ID,
        disableMemoryHeapProvider = true,
        disableStackTraceAllThreads = true,
        disableStackTraceCrashingThread = true,
        disableCapPublisher = true,
        strategy = Strategy.ALL,
        maxAttempts = 10,
        delay = 60 * 1000, // milliseconds ~ 1 minute
        offlineSuitable = true,
        connectionLevelSuitable = Connection.OTHER,
        roamingSuitable = true
)
public class AnnotatedClassWithToast extends CrashLibTestsParentFake {
}
