Exemplo n.º 1
0
    public void WhenAssetHasDependencyOnBundle_AssetLocationIncludesRecursiveBundleDependencies()
    {
        GenerateLocationListsTask.Input input = GenerateDefaultInput();

        AddressableAssetGroup groupX = CreateGroupMappedToBundle(input, "X");
        AddressableAssetGroup groupY = CreateGroupMappedToBundle(input, "Y");
        AddressableAssetGroup groupZ = CreateGroupMappedToBundle(input, "Z");
        AddressableAssetGroup groupW = CreateGroupMappedToBundle(input, "W");

        CreateAddressablePrefab(input, "p1", groupX, "fileX", "fileY");
        CreateAddressablePrefab(input, "p2", groupY, "fileY");
        CreateAddressablePrefab(input, "p3", groupY, "fileY", "fileZ");
        CreateAddressablePrefab(input, "p4", groupZ, "fileZ");
        CreateAddressablePrefab(input, "p5", groupZ, "fileZ", "fileW");
        CreateAddressablePrefab(input, "p6", groupW, "fileW");

        input.AddressableAssetEntries = BuildAddressableAssetEntryList(input.Settings);
        GenerateLocationListsTask.Output output = GenerateLocationListsTask.ProcessInput(input);

        AssertLocationDependencies(output, "p1", "bundleX", "bundleY", "bundleZ", "bundleW");
        AssertLocationDependencies(output, "p2", "bundleY", "bundleZ", "bundleW");
        AssertLocationDependencies(output, "p3", "bundleY", "bundleZ", "bundleW");
        AssertLocationDependencies(output, "p4", "bundleZ", "bundleW");
        AssertLocationDependencies(output, "p5", "bundleZ", "bundleW");
        AssertLocationDependencies(output, "p6", "bundleW");
    }
Exemplo n.º 2
0
    public void WhenAssetLoadsFromBundle_ProviderTypesIncludesBundledAssetProvider()
    {
        GenerateLocationListsTask.Input input  = GenerateDefaultInput();
        AddressableAssetGroup           groupX = CreateGroupMappedToBundle(input, "X");

        CreateAddressablePrefab(input, "p1", groupX, "fileX");
        input.AddressableAssetEntries = BuildAddressableAssetEntryList(input.Settings);
        GenerateLocationListsTask.Output output = GenerateLocationListsTask.ProcessInput(input);
        CollectionAssert.Contains(output.ProviderTypes, typeof(BundledAssetProvider));
    }
Exemplo n.º 3
0
    public void WhenGroupCreatesMultipleBundles_AllBundlesInAssetGroupToBundlesMap()
    {
        GenerateLocationListsTask.Input input = GenerateDefaultInput();
        AddressableAssetGroup           group = m_Settings.CreateGroup($"groupX", false, false, false, null, typeof(BundledAssetGroupSchema));

        input.BundleToAssetGroup["bundleX"] = group.Guid;
        input.BundleToAssetGroup["bundleY"] = group.Guid;
        input.FileToBundle["fileX"]         = "bundle1";
        input.FileToBundle["fileY"]         = "bundle2";
        CreateAddressablePrefab(input, "p1", group, "fileX");
        CreateAddressablePrefab(input, "p2", group, "fileY");
        input.AddressableAssetEntries = BuildAddressableAssetEntryList(input.Settings);
        GenerateLocationListsTask.Output output = GenerateLocationListsTask.ProcessInput(input);
        CollectionAssert.AreEquivalent(new string[] { "bundle1", "bundle2" }, output.AssetGroupToBundles[group]);
    }
Exemplo n.º 4
0
 void AssertLocationDependencies(GenerateLocationListsTask.Output output, string location, params string[] deps)
 {
     FindLocationEntry(output.Locations, location, out ContentCatalogDataEntry e1);
     CollectionAssert.AreEquivalent(e1.Dependencies, deps);
 }