private void RenderFilesList(ScriptFilesComparerBase scriptFilesComparer)
        {
            _consoleProcessMessages.SetInfoMessage("");
            _consoleProcessMessages.SetInfoMessage($"++ {scriptFilesComparer.ScriptFileType.FileTypeCode} Scripts:");


            string captionsMessage = $"{"  Status",-10} |  File";

            _consoleProcessMessages.SetInfoMessage(captionsMessage);

            string captionsLineMessage = "-".PadRight(55, '-');

            _consoleProcessMessages.SetInfoMessage(captionsLineMessage);


            foreach (var file in scriptFilesComparer.AllFileSystemScriptFiles)
            {
                switch (file.HashDiffType)
                {
                case HashDiffType.Different:

                    _consoleProcessMessages.SetInlineInfoMessage($"   changed".PadRight(11), ConsoleColor.DarkRed);
                    break;

                case HashDiffType.Equal:

                    _consoleProcessMessages.SetInlineInfoMessage($"   sync".PadRight(11), ConsoleColor.DarkGreen);
                    break;

                case HashDiffType.EqualVirtual:

                    _consoleProcessMessages.SetInlineInfoMessage($"   sync vr".PadRight(11), ConsoleColor.DarkGreen);
                    break;

                case HashDiffType.NotExist:
                default:

                    _consoleProcessMessages.SetInlineInfoMessage($" ".PadRight(11), ConsoleColor.Gray);
                    break;
                }

                _consoleProcessMessages.SetInlineInfoMessage($"| {file.Filename}", ConsoleColor.Gray);

                _consoleProcessMessages.SetInfoMessage("");
            }
        }
Beispiel #2
0
        public override void Execute(DBVersionsProcessContext processContext)
        {
            processContext.ThrowIfNull(nameof(processContext));


            TargetScripts targetScripts = (processContext.ProcessArgs as DBVersionsProcessArgs).TargetScripts;
            //if (processContext.ProcessArgs != null)
            //{
            //    targetScripts = (processContext.ProcessArgs as DBVersionsProcessArgs).TargetScripts;
            //}

            ScriptFilesComparerBase scriptFilesComparer = processContext.ScriptFilesState.GetScriptFilesComparerByType(_fileTypeCode);

            if (!targetScripts.TargetScriptsByType.TryGetValue(_fileTypeCode, out string targetStateScriptFileName))
            {
                targetStateScriptFileName = null;
            }
            List <RuntimeScriptFile> scriptFilesList = scriptFilesComparer.GetPendingFilesToExecute(targetStateScriptFileName);

            List <ActionStepBase> internalSteps = new List <ActionStepBase>();

            foreach (RuntimeScriptFile scriptFile in scriptFilesList)
            {
                string ignoreStr = "";
                if (processContext.IsVirtualExecution)
                {
                    ignoreStr = CoreTextResources.IgnoreBecauseVirtualExecution;
                }

                string stepName = $"{scriptFile.Filename}{ignoreStr}";

                ExecuteSingleFileScriptStep executeSingleFileScriptStep = _executeSingleFileScriptStepFactory.Create(_dbCommands, stepName, scriptFile);

                internalSteps.Add(executeSingleFileScriptStep);
            }

            ExecuteInternalSteps(internalSteps, false);
        }
Beispiel #3
0
 public FileStateListAssert(string testName, ScriptFilesComparerBase scriptFilesComparer)
 {
     _testName            = testName;
     _scriptFilesComparer = scriptFilesComparer;
 }
Beispiel #4
0
 public TargetScriptFileAlreadyExecutedValidator(ScriptFilesComparerBase scriptFilesComparer,
                                                 string targetStateScriptFileName)
 {
     _scriptFilesComparer       = scriptFilesComparer;
     _targetStateScriptFileName = targetStateScriptFileName;
 }
Beispiel #5
0
 public TargetStateScriptFileExistValidator(ScriptFilesComparerBase scriptFilesComparer,
                                            string targetStateScriptFileName)
 {
     _scriptFilesComparer       = scriptFilesComparer;
     _targetStateScriptFileName = targetStateScriptFileName;
 }
Beispiel #6
0
 public HistoryExecutedFilesChangedValidator(ScriptFilesComparerBase scriptFilesComparer)
 {
     _scriptFilesComparer = scriptFilesComparer;
 }
Beispiel #7
0
 public NextScriptFileNameValidator(ScriptFilesComparerBase scriptFilesComparer,
                                    string scriptName)
 {
     _scriptFilesComparer = scriptFilesComparer;
     _scriptName          = scriptName;
 }