Exemple #1
0
        public void Unload(string bundleName)
        {
            // Bundle has not been loaded yet or does not need to be unload
            if (!_cachedLoader.Unload(bundleName))
                return;

            _bundleManifestLoader.Load()
                .AutoDetach()
                .Subscribe(x => x
                    .GetAllDependencies(bundleName)
                    .ForEach(y => _cachedLoader.UnloadDependency(y, bundleName)));
        }
        public void UnloadBundleAndDependencies_CallLoadManifestAndUnloadDependencies()
        {
            SetupManifestDependencyBundlesReturn(_mockedDependencies);
            _cachedLoader.Unload(Arg.Any <string>()).Returns(true);

            _fixture.Unload(AssetBundleName);

            _cachedLoader.Received(1).Unload(Arg.Any <string>());
            _bundleManifestLoader.Received(1).Load();
            _bundleManifest.Received(1).GetAllDependencies(Arg.Any <string>());

            foreach (var t in _mockedDependencies)
            {
                _cachedLoader.Received(1).UnloadDependency(t, Arg.Any <string>());
            }
        }