예제 #1
0
        public void ExternalIdConflictImport_CreateNew()
        {
            CreateFakeLevel("testlevel", null);
            FileManagement.ImportDirectory(new DirectoryInfo(tempPath));
            Level oldLevel = LevelQuery.List().First();

            CreateFakeLevel("testlevel", null, "", "newSong");
            FileManagement.ImportDirectory(new DirectoryInfo(tempPath));
            FileManagement.FinalizeImport();

            IEnumerable <Level> levels = LevelQuery.List();
            int count = levels.Count();

            if (count != 2)
            {
                Assert.Fail($"Expected 2 levels but {count} exists");
            }

            foreach (Level level in levels)
            {
                if (level.Charts[0].Name == "newSong")
                {
                    Assert.Pass("Level imported as new");
                }
            }
        }
예제 #2
0
        public void LevelAndPackImport_Success()
        {
            CreateFakeLevel("testlevel", "testpack", "level");
            CreateFakePack("testpack", "pack");

            FileManagement.ImportDirectory(new DirectoryInfo(tempPath));

            int levelCount = LevelQuery.List().Count();
            int packCount  = PackQuery.List().Count();

            Assert.That(packCount == 1 && levelCount == 1);
        }
예제 #3
0
        public void ExternalIdConflictImport_ReplaceOld()
        {
            CreateFakeLevel("testlevel", null);
            FileManagement.ImportDirectory(new DirectoryInfo(tempPath));
            Level oldLevel = LevelQuery.List().First();

            CreateFakeLevel("testlevel", null, "", "replacedSong");
            FileManagement.ImportDirectory(new DirectoryInfo(tempPath));

            foreach (List <IArccoreInfo> conflict in FileManagement.GetConflicts())
            {
                FileManagement.Replace(conflict[0]);
            }
            FileManagement.FinalizeImport();

            Assert.AreEqual(LevelQuery.Get(oldLevel.Id).Charts[0].Name, "replacedSong");
        }
예제 #4
0
        public void LevelImport_Success()
        {
            CreateFakeLevel("testlevel");

            FileManagement.ImportDirectory(new DirectoryInfo(tempPath));

            IEnumerable <Level> levels = LevelQuery.List();
            int count;

            if ((count = levels.Count()) != 1)
            {
                Assert.Fail($"There should only be one level but {count} levels found");
            }

            Level level = levels.First();

            Assert.That(level.ExternalId == "testlevel");
        }
예제 #5
0
        public void ExternalIdConflictImport_Abort()
        {
            CreateFakeLevel("testlevel", null);
            FileManagement.ImportDirectory(new DirectoryInfo(tempPath));
            Level oldLevel = LevelQuery.List().First();

            CreateFakeLevel("testlevel", null, "", "newSong");
            FileManagement.ImportDirectory(new DirectoryInfo(tempPath));
            FileManagement.Cleanup();

            IEnumerable <Level> levels = LevelQuery.List();
            int count = levels.Count();

            if (count != 1)
            {
                Assert.Fail($"Expected 1 levels but {count} exists");
            }

            Level level = levels.First();

            Assert.AreEqual(level.Charts[0].Name, "testsong");
        }