Skip to content

Commit

Permalink
Added a 'needsapp_' reserved prefix, and changed to use a list of res…
Browse files Browse the repository at this point in the history
…erved prefixes instead of two consts
  • Loading branch information
DarrellMozingo committed Oct 11, 2012
1 parent f9d3e30 commit 01e084d
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 13 deletions.
3 changes: 1 addition & 2 deletions src/DatabaseMigraine.Tests/DatabaseComparisonTests.cs
Expand Up @@ -260,8 +260,7 @@ private IEnumerable<Database> GetListOfAdditionalDbsInRefEnv(Server referenceSer

private bool GenericDiscard<T>(T dbElement) where T : IScriptableDatabaseElementWithName
{
return dbElement.Name.ToLower().StartsWith(DbScriptFolderManager.TempPrefix) ||
dbElement.Name.ToLower().StartsWith(DbScriptFolderManager.DbaPrefix) ||
return DbScriptFolderManager.ReservedPrefixes.Any(reservedPrefix => dbElement.Name.ToLower().StartsWith(reservedPrefix)) ||
Discard(dbElement);
}

Expand Down
19 changes: 8 additions & 11 deletions src/DatabaseMigraine/DbScriptFolderManager.cs
Expand Up @@ -154,9 +154,7 @@ protected virtual void CheckContentViolationRules(Dictionary<string, string> ele
CheckNameNotMatchingElementViolation(elementNameToScriptContents);
}

public const string TempPrefix = "tmp";

public const string DbaPrefix = "dba_";
public static readonly IEnumerable<string> ReservedPrefixes = new[] { "tmp", "dba_", "needsapp_" };

private static string CheckScriptNameConventions(FileInfo script)
{
Expand All @@ -173,14 +171,13 @@ private static string CheckScriptNameConventions(FileInfo script)
"No script should start with the '{0}' prefix, please use DatabaseScripter to transform into Migrator structure: {1}", dboPrefix, elementName));
}

if (elementName.ToLower().StartsWith(TempPrefix)) {
throw new ArgumentException(String.Format(
"Elements with the prefix '{0}' are reserved for DBA use, not development: {1}", TempPrefix, elementName));
}

if (elementName.ToLower().StartsWith(DbaPrefix)) {
throw new ArgumentException(String.Format(
"Elements with the prefix '{0}' are reserved for DBA use, not development: {1}", DbaPrefix, elementName));
foreach (var reservedPrefix in ReservedPrefixes)
{
if (elementName.ToLower().StartsWith(reservedPrefix))
{
throw new ArgumentException(String.Format(
"Elements with the prefix '{0}' are reserved for DBA use, not development: {1}", reservedPrefix, elementName));
}
}

return elementName;
Expand Down

0 comments on commit 01e084d

Please sign in to comment.