Exemple #1
0
 private static ProjectConfigItem CreateBaseProjectConfig()
 {
     return(new ProjectConfigItem()
     {
         Id = IntegrationTestsConsts.TestProjectId,
         DeployArtifactFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DeployArtifact_FolderPath),
         BackupFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DBBackupBaseFolder),
     });
 }
        private void SaveProjectConfigsFile(Dictionary <string, ProjectConfigItem> dicAllProjectConfigs)
        {
            List <ProjectConfigItem> projectConfigs = dicAllProjectConfigs.Values.ToList();
            string projectConfigsListStr            = SerializationUtils.JsonSerialize(projectConfigs);

            string configProjectsFilePath = FileSystemPathUtils.ParsePathVaribles(_settings.ConfigProjectsFilePath);

            FileSystemPathUtils.ResloveFilePath(configProjectsFilePath);
            File.WriteAllText(configProjectsFilePath, projectConfigsListStr);
        }
Exemple #3
0
        public string GetScriptFullPath_Incremental_scriptName2(DBConnectionInfo dbConnectionInfo)
        {
            string devScriptsBaseFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DevScriptsBaseFolderPath_Normal);

            devScriptsBaseFolderPath = devScriptsBaseFolderPath.Replace("[DBType]", dbConnectionInfo.DBType);

            string scriptFilename  = $"incScript_0007_{ScriptName2}.sql";
            string script1FullPath = Path.Combine(devScriptsBaseFolderPath, _relFolder_Incremental, scriptFilename);

            return(script1FullPath);
        }
        public string GetScriptFullPath_DevDummyData_scriptName1(DBConnectionInfo dbConnectionInfo)
        {
            string devScriptsBaseFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DevScriptsBaseFolderPath_Normal);

            devScriptsBaseFolderPath = devScriptsBaseFolderPath.Replace("[DBType]", dbConnectionInfo.DBType);

            string scriptFilename  = $"dddScript_0003_{ScriptName1}.sql";
            string script1FullPath = Path.Combine(devScriptsBaseFolderPath, _relFolder_DevDummyData, scriptFilename);

            return(script1FullPath);
        }
Exemple #5
0
        public override ITestContext Arrange(TestArgs testArgs)
        {
            ProjectConfigItem projectConfig = IntegrationTestsConsts.GetNewInstanceForDummyProjectConfigValid();

            projectConfig.DevScriptsBaseFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DevScriptsBaseFolderPath_Normal).Replace("[DBType]", IntegrationTestsConsts.SqlServerDBType);
            projectConfig.Id          = OldProjectId;
            projectConfig.Description = ProjectDesc;

            _projectConfigsStorageHelper.PrepareTestProject(projectConfig);

            ProjectConfigTestArgs projectConfigTestArgs = new ProjectConfigTestArgs(projectConfig);

            _dbHandler.RestoreDB(projectConfig.DBConnectionInfo, DBBackupFileType.EmptyDB);

            return(new ProcessTestContext(projectConfigTestArgs));
        }
Exemple #6
0
        public virtual string GetDBBackupFilePath(DBBackupFileType dbBackupFileType, string dbType)
        {
            string filePath = dbBackupFileType switch
            {
                DBBackupFileType.EmptyDB => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DBBackup_EmptyDB).Replace("[DBType]", dbType),
                DBBackupFileType.EmptyDBWithSystemTables => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DBBackup_ExceptSystemTables).Replace("[DBType]", dbType),
                DBBackupFileType.AfterRunInitStateScript => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DBBackup_AfterRunInitStateScript).Replace("[DBType]", dbType),
                DBBackupFileType.MiddleState => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DBBackup_MiddleState).Replace("[DBType]", dbType),
                DBBackupFileType.FinalState_DevEnv => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DBBackup_FinalState_DevEnv).Replace("[DBType]", dbType),
                DBBackupFileType.FinalState_DeliveryEnv => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DBBackup_FinalState_DeliveryEnv).Replace("[DBType]", dbType),
                DBBackupFileType.FinalState_MissingSystemTables => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DBBackup_FinalState_MissingSystemTables).Replace("[DBType]", dbType),
                DBBackupFileType.AddDataAfterFinalState => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DBBackup_AddDataAfterFinalState).Replace("[DBType]", dbType),
                _ => throw new Exception($"Invalid DBBackupFileType: '{dbBackupFileType}'"),
            };

            return(filePath);
        }
        public void SetDefaltValues()
        {
            if (string.IsNullOrWhiteSpace(DBType))
            {
                DBType = SqlServerDBTypeObjectsFactory.DBTypeCode;
            }
            if (string.IsNullOrWhiteSpace(Server))
            {
                Server = "(local)";
            }
            if (string.IsNullOrWhiteSpace(BackupFolderPath))
            {
                string tempBackupFolderPath = @"[CommonApplicationData]\AutoVersionsDB\Backups";

                if (!string.IsNullOrWhiteSpace(Id))
                {
                    tempBackupFolderPath += $@"\{Id}";
                }

                BackupFolderPath = FileSystemPathUtils.ParsePathVaribles(tempBackupFolderPath);
            }
        }
        public Dictionary <string, ProjectConfigItem> GetAllProjectConfigs()
        {
            Dictionary <string, ProjectConfigItem> dicAllProjectConfigs = new Dictionary <string, ProjectConfigItem>();

            List <ProjectConfigItem> listAllProjectConfigs;

            string configProjectsFilePath = FileSystemPathUtils.ParsePathVaribles(_settings.ConfigProjectsFilePath);

            if (File.Exists(configProjectsFilePath))
            {
                string projectConfigsListStr = File.ReadAllText(configProjectsFilePath);

                listAllProjectConfigs = SerializationUtils.JsonDeserialize <List <ProjectConfigItem> >(projectConfigsListStr);
            }
            else
            {
                listAllProjectConfigs = new List <ProjectConfigItem>();
            }

            listAllProjectConfigs = listAllProjectConfigs.OrderBy(e => e.Id.ToTrimedInvariant()).ToList();
            dicAllProjectConfigs  = listAllProjectConfigs.ToDictionary(e => e.Id.ToTrimedInvariant());

            return(dicAllProjectConfigs);
        }
Exemple #9
0
        private static void SetScriptsFoldersPath(ref ProjectConfigItem projectConfig, ScriptFilesStateType scriptFilesStateType)
        {
            if (projectConfig.DevEnvironment)
            {
                switch (scriptFilesStateType)
                {
                case ScriptFilesStateType.ValidScripts:

                    projectConfig.DevScriptsBaseFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DevScriptsBaseFolderPath_Normal).Replace("[DBType]", projectConfig.DBType);
                    break;

                case ScriptFilesStateType.MissingFile:

                    projectConfig.DevScriptsBaseFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DevScriptsBaseFolderPath_MissingFile).Replace("[DBType]", projectConfig.DBType);
                    break;

                case ScriptFilesStateType.ScriptError:

                    projectConfig.DevScriptsBaseFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DevScriptsBaseFolderPath_ScriptError).Replace("[DBType]", projectConfig.DBType);
                    break;

                case ScriptFilesStateType.IncrementalChanged:

                    projectConfig.DevScriptsBaseFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DevScriptsBaseFolderPath_ChangedHistoryFiles_Incremental).Replace("[DBType]", projectConfig.DBType);
                    break;

                case ScriptFilesStateType.RepeatableChanged:

                    projectConfig.DevScriptsBaseFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DevScriptsBaseFolderPath_ChangedHistoryFiles_Repeatable).Replace("[DBType]", projectConfig.DBType);
                    break;

                case ScriptFilesStateType.NoScriptFiles:

                    projectConfig.DevScriptsBaseFolderPath = FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DevScriptsBaseFolderPath_NoScriptFiles).Replace("[DBType]", projectConfig.DBType);

                    if (!Directory.Exists(projectConfig.IncrementalScriptsFolderPath))
                    {
                        Directory.CreateDirectory(projectConfig.IncrementalScriptsFolderPath);
                    }
                    if (!Directory.Exists(projectConfig.RepeatableScriptsFolderPath))
                    {
                        Directory.CreateDirectory(projectConfig.RepeatableScriptsFolderPath);
                    }
                    if (!Directory.Exists(projectConfig.DevDummyDataScriptsFolderPath))
                    {
                        Directory.CreateDirectory(projectConfig.DevDummyDataScriptsFolderPath);
                    }

                    break;

                default:
                    throw new Exception($"Invalid ScriptFilesStateType: '{scriptFilesStateType}'");
                }
            }
            else
            {
                projectConfig.DeliveryArtifactFolderPath = scriptFilesStateType switch
                {
                    ScriptFilesStateType.ValidScripts => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DeliveryArtifactFolderPath_Normal).Replace("[DBType]", projectConfig.DBType),
                    ScriptFilesStateType.MissingFile => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DeliveryArtifactFolderPath_MissingFileh).Replace("[DBType]", projectConfig.DBType),
                    ScriptFilesStateType.ScriptError => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DeliveryArtifactFolderPath_ScriptError).Replace("[DBType]", projectConfig.DBType),
                    ScriptFilesStateType.IncrementalChanged => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DeliveryArtifactFolderPath_ChangedHistoryFiles_Incremental).Replace("[DBType]", projectConfig.DBType),
                    ScriptFilesStateType.RepeatableChanged => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DeliveryArtifactFolderPath_ChangedHistoryFiles_Repeatable).Replace("[DBType]", projectConfig.DBType),
                    ScriptFilesStateType.WithDevDummyDataFiles => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DeliveryArtifactFolderPath_WithDevDummyDataFiles).Replace("[DBType]", projectConfig.DBType),
                    ScriptFilesStateType.NoScriptFiles => FileSystemPathUtils.ParsePathVaribles(IntegrationTestsConsts.DeliveryArtifactFolderPath_NoScriptFiles).Replace("[DBType]", projectConfig.DBType),
                    _ => throw new Exception($"Invalid ScriptFilesStateType: '{scriptFilesStateType}'"),
                };
            }
        }
 public AutoVersionsDBSettings(string autoVersionsDBBaseFolder)
 {
     _autoVersionsDBBaseFolder = FileSystemPathUtils.ParsePathVaribles(autoVersionsDBBaseFolder);
 }
 public AutoVersionsDBSettings()
 {
     _autoVersionsDBBaseFolder = FileSystemPathUtils.ParsePathVaribles(@"[CommonApplicationData]\AutoVersionsDB");
 }