private void TestWrite( Func <System.Data.Entity.Migrations.Utilities.MigrationWriter, ScaffoldedMigration, string> action, bool skipUserCodeVerification = false) { var command = CreateCommand(_projectDir); var writer = new System.Data.Entity.Migrations.Utilities.MigrationWriter(command); var scaffoldedMigration = new ScaffoldedMigration { MigrationId = MigrationId, Language = Language, Directory = MigrationsDirectory, UserCode = "The user code.", DesignerCode = "The designer code.", Resources = { { ResourceName, "The resource." } } }; var relativeUserCodePath = action(writer, scaffoldedMigration); Assert.Equal(UserCodePath, relativeUserCodePath); if (!skipUserCodeVerification) { var userCodePath = Path.Combine(_projectDir, UserCodePath); Assert.Equal("The user code.", File.ReadAllText(userCodePath)); } var designerCodePath = Path.Combine(_projectDir, DesignerCodePath); Assert.Equal("The designer code.", File.ReadAllText(designerCodePath)); var resourcesPath = Path.Combine(_projectDir, ResourcesPath); using (var reader = new ResXResourceReader(resourcesPath)) { var resources = reader.Cast <DictionaryEntry>(); Assert.Equal(1, resources.Count()); Assert.Contains(new DictionaryEntry(ResourceName, "The resource."), resources); } }
private void TestWrite( Func<System.Data.Entity.Migrations.Utilities.MigrationWriter, ScaffoldedMigration, string> action, bool skipUserCodeVerification = false) { var command = CreateCommand(_projectDir); var writer = new System.Data.Entity.Migrations.Utilities.MigrationWriter(command); var scaffoldedMigration = new ScaffoldedMigration { MigrationId = MigrationId, Language = Language, Directory = MigrationsDirectory, UserCode = "The user code.", DesignerCode = "The designer code.", Resources = { { ResourceName, "The resource." } } }; var relativeUserCodePath = action(writer, scaffoldedMigration); Assert.Equal(UserCodePath, relativeUserCodePath); if (!skipUserCodeVerification) { var userCodePath = Path.Combine(_projectDir, UserCodePath); Assert.Equal("The user code.", File.ReadAllText(userCodePath)); } var designerCodePath = Path.Combine(_projectDir, DesignerCodePath); Assert.Equal("The designer code.", File.ReadAllText(designerCodePath)); var resourcesPath = Path.Combine(_projectDir, ResourcesPath); using (var reader = new ResXResourceReader(resourcesPath)) { var resources = reader.Cast<DictionaryEntry>(); Assert.Equal(1, resources.Count()); Assert.Contains(new DictionaryEntry(ResourceName, "The resource."), resources); } }