public void TearDown()
        {
            _assemblyMultiLoader.Dispose();
            _assemblyMultiLoader = null;

            _assembliesDownloadFailedRaised = false;
            _assembliesDownloadedRaised     = false;
            _assemblyDownloadedRaised       = false;
            _assemblyDownloadStartedRaised  = false;
            _downloadEventCount             = 0;
            _uris = null;
        }
        public void SetUp()
        {
            _assemblyMultiLoader = new AssemblyMultiLoader
            {
                KernelConfigManager = _configManager,
            };

            _assemblyMultiLoader.AssembliesDownloadFailed += (sender, downloads) => _assembliesDownloadFailedRaised = true;
            _assemblyMultiLoader.AssembliesDownloaded     += (sender, assemblies) => _assembliesDownloadedRaised = true;
            _assemblyMultiLoader.AssemblyDownloaded       += delegate
            {
                _assemblyDownloadedRaised = true;
                _downloadEventCount++;
            };
            _assemblyMultiLoader.AssemblyDownloadStarted += (sender, uris) => _assemblyDownloadStartedRaised = true;

            _uris = new List <Uri>
            {
                new Uri("http://localhost/TestAssembly1.dll"),
                new Uri("http://localhost/TestAssembly2.dll"),
                new Uri("http://localhost/TestAssembly3.dll"),
                new Uri("http://localhost/TestAssembly4.dll")
            };
        }