public void MergeOneSoundAchievementsResultInDynamicSoundsAchievement()
        {
            var oneSoundAchievement1 = VoicepackSampleCreator.CreateOneSoundAchievement("pakSoundPath1", "fileSoundPath1");
            var oneSoundAchievement2 = VoicepackSampleCreator.CreateOneSoundAchievement("pakSoundPath2", "fileSoundPath2");


            VoicepackMerger.MergeAchievement(oneSoundAchievement1, oneSoundAchievement2);


            var expectedAchievementSameOrder = VoicepackSampleCreator.CreateDynamicSoundsAchievement(new string[2, 2]
            {
                { "pakSoundPath1", "fileSoundPath1" },
                { "pakSoundPath2", "fileSoundPath2" }
            });

            Assert.IsTrue(VoicepackComparer.AchievementOptionsDynamicSoundsEqual(
                              expectedAchievementSameOrder, oneSoundAchievement1));

            //also check other order
            var expectedAchievementDifferentOrder = VoicepackSampleCreator.CreateDynamicSoundsAchievement(new string[2, 2]
            {
                { "pakSoundPath2", "fileSoundPath2" },
                { "pakSoundPath1", "fileSoundPath1" }
            });

            Assert.IsTrue(VoicepackComparer.AchievementOptionsDynamicSoundsEqual(
                              expectedAchievementDifferentOrder, oneSoundAchievement1));
        }
        public void MergeDynamicSoundsAchievments()
        {
            var dynamicSoundsAchievment1 = VoicepackSampleCreator.CreateDynamicSoundsAchievement(new string[2, 2]
            {
                { "pakSoundPath3", "fileSoundPath3" },
                { "pakSoundPath2", "fileSoundPath2" }
            });

            var dynamicSoundsAchievment2 = VoicepackSampleCreator.CreateDynamicSoundsAchievement(new string[2, 2]
            {
                { "pakSoundPath1", "fileSoundPath1" },
                { "pakSoundPath4", "fileSoundPath4" }
            });

            VoicepackMerger.MergeAchievement(dynamicSoundsAchievment1, dynamicSoundsAchievment2);

            var expectedAchievement = VoicepackSampleCreator.CreateDynamicSoundsAchievement(new string[4, 2]
            {
                { "pakSoundPath2", "fileSoundPath2" },
                { "pakSoundPath1", "fileSoundPath1" },
                { "pakSoundPath3", "fileSoundPath3" },
                { "pakSoundPath4", "fileSoundPath4" }
            });

            Assert.IsTrue(VoicepackComparer.AchievementOptionsDynamicSoundsEqual(expectedAchievement, dynamicSoundsAchievment1));
        }
        public void MergeOneSoundAchievementWithDynamicSoundsAchievement()
        {
            var oneSoundAchievement = VoicepackSampleCreator.CreateOneSoundAchievement("pakSoundPath1", "fileSoundPath1");

            var dynamicSoundsAchievment = VoicepackSampleCreator.CreateDynamicSoundsAchievement(new string[2, 2]
            {
                { "pakSoundPath3", "fileSoundPath3" },
                { "pakSoundPath2", "fileSoundPath2" }
            });

            VoicepackMerger.MergeAchievement(oneSoundAchievement, dynamicSoundsAchievment);

            var expectedAchievement = VoicepackSampleCreator.CreateDynamicSoundsAchievement(new string[3, 2]
            {
                { "pakSoundPath3", "fileSoundPath3" },
                { "pakSoundPath2", "fileSoundPath2" },
                { "pakSoundPath1", "fileSoundPath1" }
            });

            Assert.IsTrue(VoicepackComparer.AchievementOptionsDynamicSoundsEqual(expectedAchievement, oneSoundAchievement));
        }