Ejemplo n.º 1
0
        private void OnExport()
        {
            if (selectedSetting == null)
            {
                return;
            }
            ClearLogs();
            SaveSettings();
            OutLog("Start exporting with validation.");
            var baseFolderPath = AssetDatabase.GetAssetPath(baseFolder);

            result = ValidatedExporter.ValidatedExport(baseFolderPath, selectedSetting, forceExport);
            AssetDatabase.Refresh();
            var header = string.Format("- version:{0}", ProductInfoUtility.GetVersion()) + Environment.NewLine;

            header += string.Format("- Rule set:{0}", selectedSetting.SettingName) + Environment.NewLine;
            header += string.Format("- Base folder:{0}", baseFolderPath) + Environment.NewLine;
            if (forceExport)
            {
                header += string.Format("- Force export:{0}", forceExport) + Environment.NewLine;
            }
            var log = header + result.GetValidationLog() + result.GetExportLog() + result.log;

            forceExport = false;
            SetMessages(header, result);
            OutLog(log);
            OutLog("Export completed.");
        }
Ejemplo n.º 2
0
        public void TestExport()
        {
            var filename       = "test.unitypackage";
            var baseFolderPath = "Assets/VitDeck/Exporter/Tests/TestBaseFolder";
            var setting        = ScriptableObject.CreateInstance(typeof(ExportSetting)) as ExportSetting;

            setting.SettingName      = "";
            setting.Description      = "";
            setting.ExportFolderPath = testExportFolder;
            setting.fileNameFormat   = filename;
            setting.ruleSetName      = "PassRuleSet";
            var result = ValidatedExporter.ValidatedExport(baseFolderPath, setting, false, true);

            Assert.That(result.forceExport, Is.False);
            Assert.That(result.exportResult, Is.Not.Null);
            Assert.That(result.validationResults, Is.Not.Empty);
            Assert.That(string.IsNullOrEmpty(result.log));
            Assert.That(File.Exists(result.exportResult.exportFilePath));
        }
Ejemplo n.º 3
0
        public void TestExportException()
        {
            var filename       = "testException.unitypackage";
            var baseFolderPath = "Assets/VitDeck/Exporter/Tests/TestBaseFolder";
            var setting        = new ExportSetting();

            setting.SettingName      = "";
            setting.Description      = "";
            setting.ExportFolderPath = testExportFolder;
            setting.fileNameFormat   = filename;
            setting.ruleSetName      = "";
            //setting null
            Assert.That(() => ValidatedExporter.ValidatedExport(baseFolderPath, null, false), Throws.ArgumentNullException);
            //basefolder null
            Assert.That(() => ValidatedExporter.ValidatedExport(null, setting, false), Throws.ArgumentNullException);
            //exportFolderPath empty
            setting.ExportFolderPath = "";
            Assert.That(() => ValidatedExporter.ValidatedExport(null, setting, false), Throws.ArgumentNullException);
            //exportFolderPath does not start with `Assets`
            setting.ExportFolderPath = "InvalidPath/Export";
            Assert.That(() => ValidatedExporter.ValidatedExport(null, setting, false), Throws.ArgumentNullException);
        }
Ejemplo n.º 4
0
        public void TestExportError()
        {
            var filename       = "testError.unitypackage";
            var baseFolderPath = "Assets/VitDeck/Exporter/Tests/TestBaseFolder";
            var setting        = new ExportSetting();

            setting.SettingName      = "";
            setting.Description      = "";
            setting.ExportFolderPath = testExportFolder;
            setting.fileNameFormat   = filename;
            setting.ruleSetName      = "";
            ValidatedExporter.ValidatedExport(baseFolderPath, setting, false);
            //ファイル重複していた場合
            ValidatedExportResult willFailResult = new ValidatedExportResult(false);

            LogAssert.Expect(LogType.Error, new Regex(@"^System\.IO\.IOException.*"));
            Assert.DoesNotThrow(() => willFailResult = ValidatedExporter.ValidatedExport(baseFolderPath, setting, false));
            Assert.That(willFailResult.exportResult, Is.Not.Null);
            var willPassResult = ValidatedExporter.ValidatedExport(baseFolderPath, setting, true);

            Assert.That(willPassResult.exportResult.exportResult, Is.True);
        }