internal TestContainerDiscoverer
        (
            [Import(typeof(IOperationState))]
            IOperationState operationState,

            [Import(typeof(SVsServiceProvider))]
            IServiceProvider serviceProvider
        )
        {
            TestContainersUpdated?.ToString();

            Logger.Clear();
            Logger.Initialize(serviceProvider, Vsix.Name);

            CoverageUtil.InstallOrUpdateCoverlet(exception =>
            {
                if (exception != null)
                {
                    Logger.Log(exception);
                    return;
                }

                operationState.StateChanged += OperationState_StateChanged;
                Logger.Log("Initialized!");
            });
        }
        internal TestContainerDiscoverer
        (
            [Import(typeof(IOperationState))]
            IOperationState operationState,

            [Import(typeof(SVsServiceProvider))]
            IServiceProvider serviceProvider
        )
        {
            _serviceProvider = serviceProvider;

            new Thread(() =>
            {
                try
                {
                    Logger.Initialize(_serviceProvider);

                    FCCEngine.Initialize();
                    Initialize(_serviceProvider);
                    TestContainersUpdated.ToString();
                    operationState.StateChanged += OperationState_StateChanged;

                    Logger.Log($"Initialized");
                }
                catch (Exception exception)
                {
                    Logger.Log($"Failed Initialization", exception);
                }
            }).Start();
        }