public ProjectCreator IncreaseTrustPoint(int id) { ProjectCreator projectCreator = db.ProjectCreators.Find(id); if (projectCreator != null) { projectCreator.TrustPoints += 50; } db.SaveChanges(); return(projectCreator); }
public void ItemGroupCondition() { ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .ItemGroup(condition: "4AEF424E1AFB46DF844A29AC9663329E") .Xml .ShouldBe( @"<Project> <ItemGroup Condition=""4AEF424E1AFB46DF844A29AC9663329E"" /> </Project>", StringCompareShould.IgnoreLineEndings); }
public void UsingTaskAssemblyFileSimple() { ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .UsingTaskAssemblyFile("BCC53601667C4195A9DCDCEF59C4C0F0", "125F7786CD46409FA09B4999629BAF4F") .Xml .ShouldBe( @"<Project> <UsingTask TaskName=""BCC53601667C4195A9DCDCEF59C4C0F0"" AssemblyFile=""125F7786CD46409FA09B4999629BAF4F"" /> </Project>", StringCompareShould.IgnoreLineEndings); }
public List <ProjectOption> FindAll() { List <Project> projectList = db.Set <Project>().Include(o => o.ProjectCreator).ToList(); List <ProjectOption> projectOptionList = new List <ProjectOption>(); foreach (Project p in projectList) { ProjectCreator projectCreator = p.ProjectCreator; projectOptionList.Add(CreateProjectOption(p)); } return(projectOptionList); }
public bool SoftDeleteProjectCreatorById(int id) { ProjectCreator projectCreator = db.ProjectCreators.Find(id); if (projectCreator != null) { projectCreator.Active = false; db.SaveChanges(); return(true); } return(false); }
public bool DeleteProjectCreator(int id) { ProjectCreator pc = dbContext.ProjectCreators.Find(id); if (pc == null) { return(false); } dbContext.ProjectCreators.Remove(pc); dbContext.SaveChanges(); return(true); }
public bool DeleteProjectCreatorById(int id) { ProjectCreator projectCreator = db.ProjectCreators.Find(id); if (projectCreator != null) { db.ProjectCreators.Remove(projectCreator); db.SaveChanges(); return(true); } return(false); }
public void ProjectIsReEvaluated() { ProjectCollection projectCollection = new ProjectCollection(); ProjectCreator creator = ProjectCreator.Create(projectCollection: projectCollection); creator.Project.GetPropertyValue("Property1").ShouldBe(string.Empty); creator.Project.SetGlobalProperty("Property1", "8AD6F0530E774E468DBBD5B4143A1B1D"); creator.Project.GetPropertyValue("Property1").ShouldBe("8AD6F0530E774E468DBBD5B4143A1B1D"); }
public void LoadProject(string fileName) { var glueProjectSave = FileManager.XmlDeserialize <GlueProjectSave>(fileName); ProjectManager.Self.CurrentGlueProjectSave = glueProjectSave; // also need to load the csproj: var projectFileName = FileManager.RemoveExtension(fileName) + ".csproj"; ProjectManager.Self.MainProject = ProjectCreator.CreateProject(projectFileName); ProjectManager.Self.MainProject.Load(projectFileName); }
public IActionResult AddFundingPackage([FromQuery] int ProjectId, int projectCreatorId) { ProjectCreator projCreator = db.ProjectCreators.Find(projectCreatorId); ProjectModel project = new ProjectModel { ProjectId = ProjectId, ProjectCreator = projCreator }; return(View(project)); }
public async Task BuildShouldUseDotNetCertifcateIfSetWithPostBuildSigning(bool?useDotNetCert) { var envVars = Environment.GetEnvironmentVariables(); using (var builder = new TestRepoBuilder(nameof(BuildShouldUseDotNetCertifcateIfSet), _commonRepoResourcesFixture.CommonResources)) { await builder.AddDefaultRepoSetupAsync(); // Always put in the AllowEmptySignList var signingProps = ProjectCreator.Create().PropertyGroup(); signingProps.Property("AllowEmptySignList", "true"); if (useDotNetCert.HasValue) { signingProps.Property("UseDotNetCertificate", useDotNetCert.Value.ToString()); } builder.AddProject(signingProps, "eng/Signing.props"); // Create a simple project builder.AddProject(ProjectCreator .Templates .SdkCsproj( targetFramework: "net6.0", outputType: "Exe") .PropertyGroup() .Property("IsPackable", "true") .Property("EnableSourceLink", "false"), "./src/FooPackage/FooPackage.csproj"); await builder.AddSimpleCSFile("src/FooPackage/Program.cs"); builder.Build( TestRepoUtils.BuildArg("configuration"), "Release", TestRepoUtils.BuildArg("restore"), TestRepoUtils.BuildArg("pack"), TestRepoUtils.BuildArg("publish"), TestRepoUtils.BuildArg("sign"), TestRepoUtils.BuildArg("projects"), Path.Combine(builder.TestRepoRoot, "src/FooPackage/FooPackage.csproj"), "/p:AutoGenerateSymbolPackages=false", "/p:PostBuildSign=true", "/p:DotNetPublishUsingPipelines=true") .Should().NotThrow(); string assetManifestText = GetAssetManifest(builder); string expectedCert = useDotNetCert.GetValueOrDefault() ? DotNetCertificate : MicrosoftCertificate; string unexpectedCert = useDotNetCert.GetValueOrDefault() ? MicrosoftCertificate : DotNetCertificate; // Ensure that we see the expected cert. assetManifestText.IndexOf(unexpectedCert).Should().Be(-1); assetManifestText.IndexOf(expectedCert).Should().NotBe(-1); } }
public void SingleProject() { Dictionary <string, string> globalProperties = new Dictionary <string, string> { [MSBuildPropertyNames.DesignTimeBuild] = bool.TrueString, [MSBuildPropertyNames.SlnGenLaunchVisualStudio] = bool.FalseString, }; ProjectCreator .Create(Path.Combine(TestRootPath, "Directory.Build.props")) .Save(); ProjectCreator .Create(Path.Combine(TestRootPath, "Directory.Build.targets")) .Property("SlnGenAssemblyFile", Path.Combine(Environment.CurrentDirectory, "slngen.exe")) .Import(Path.Combine(Environment.CurrentDirectory, "build", "Microsoft.VisualStudio.SlnGen.targets"), condition: "'$(IsCrossTargetingBuild)' != 'true'") .Import(Path.Combine(Environment.CurrentDirectory, "buildMultiTargeting", "Microsoft.VisualStudio.SlnGen.targets"), condition: "'$(IsCrossTargetingBuild)' == 'true'") .Save(); ProjectCreator project = ProjectCreator.Templates .SdkCsproj( Path.Combine(TestRootPath, "ProjectA", "ProjectA.csproj"), targetFramework: "netcoreapp2.0") .Save() .TryBuild("SlnGen", globalProperties, out bool result, out BuildOutput buildOutput, out IDictionary <string, TargetResult> targetOutputs); result.ShouldBeTrue(buildOutput.GetConsoleLog()); KeyValuePair <string, TargetResult> targetOutput = targetOutputs.ShouldHaveSingleItem(); targetOutput.Key.ShouldBe("SlnGen"); FileInfo expected = new FileInfo(Path.Combine(Path.ChangeExtension(project.FullPath, ".sln"))); expected.Exists.ShouldBeTrue(); SolutionFile solutionFile = SolutionFile.Parse(expected.FullName); solutionFile.SolutionConfigurations .Select(i => i.FullName) .ShouldBe(new[] { "Debug|Any CPU", "Release|Any CPU", }); solutionFile.ProjectsInOrder .Select(i => i.AbsolutePath) .ShouldBe(new[] { project.FullPath, }); }
public void ImportProjectCreator() { ProjectCreator project1 = ProjectCreator.Create("A4DD67D773834B24AC6AEA317653AD28"); ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .Import(project1, condition: "E4E4F3ECECF444D28D65F5A59D4B2E89") .Xml .ShouldBe( $@"<Project> <Import Project=""{project1.FullPath}"" Condition=""E4E4F3ECECF444D28D65F5A59D4B2E89"" /> </Project>", StringCompareShould.IgnoreLineEndings); }
public static ProjectCreator ItemRobocopy(this ProjectCreator creator, string include, string destinationFolder, string fileMatch, string condition = null) { return(creator.ItemInclude( "Robocopy", include, null, new Dictionary <string, string> { { "DestinationFolder", destinationFolder }, { "FileMatch", fileMatch }, }, condition)); }
public void ImportProjectRootElement() { ProjectCreator project1 = ProjectCreator.Create("24775F0E17A348979DB4DF3D357621F9"); ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .Import(project1.RootElement, condition: "5884085731AB4A588AC8337069C3223B") .Xml .ShouldBe( $@"<Project> <Import Project=""{project1.FullPath}"" Condition=""5884085731AB4A588AC8337069C3223B"" /> </Project>", StringCompareShould.IgnoreLineEndings); }
private static void ValidateParseCustomProjectTypeGuids(string fileExtension, string projectTypeGuid, string expectedFileExtension, Guid expectedProjectTypeGuid) { Project project = ProjectCreator.Create() .ItemInclude( MSBuildItemNames.SlnGenCustomProjectTypeGuid, fileExtension, metadata: new Dictionary <string, string> { { MSBuildPropertyNames.ProjectTypeGuid, projectTypeGuid }, }); ValidateParseCustomProjectTypeGuids(project, expectedFileExtension, expectedProjectTypeGuid); }
public void ImportProject() { ProjectCreator project1 = ProjectCreator.Create("B2EE38CD5D1E4B228655A95B2B7224BA"); ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .Import(project1.Project, condition: "8D9C051BE69C4EB99B7C4A53C80A625D") .Xml .ShouldBe( $@"<Project> <Import Project=""{project1.FullPath}"" Condition=""8D9C051BE69C4EB99B7C4A53C80A625D"" /> </Project>", StringCompareShould.IgnoreLineEndings); }
public void ContentItem() { ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .ItemContent("2B63E02B870E4F2FBE812995C081B0C5") .Xml .ShouldBe( @"<Project> <ItemGroup> <Content Include=""2B63E02B870E4F2FBE812995C081B0C5"" /> </ItemGroup> </Project>", StringCompareShould.IgnoreLineEndings); }
public void TryGetItemsCustomSelector() { ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .ItemInclude("MyItem", "3F114C1509CF4D499A44F986BEBD5707") .ItemInclude("MyItem", "8A9654A639F5429AB1C7A8F2AE9639D8") .TryGetItems("MyItem", i => i.EvaluatedInclude, out IReadOnlyCollection <string> items); items.ShouldBe(new List <string> { "3F114C1509CF4D499A44F986BEBD5707", "8A9654A639F5429AB1C7A8F2AE9639D8", }); }
public void PropertySimple() { ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .Property("FF38992245B549C5B353B1662A7A330D", "60B667098861411CA81AD8A8A355A649") .Xml .ShouldBe( @"<Project> <PropertyGroup> <FF38992245B549C5B353B1662A7A330D>60B667098861411CA81AD8A8A355A649</FF38992245B549C5B353B1662A7A330D> </PropertyGroup> </Project>", StringCompareShould.IgnoreLineEndings); }
public void PropertySetIfEmpty() { ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .Property("A47F78111F084710B139CD5AEEB5395E", string.Empty) .Xml .ShouldBe( @"<Project> <PropertyGroup> <A47F78111F084710B139CD5AEEB5395E /> </PropertyGroup> </Project>", StringCompareShould.IgnoreLineEndings); }
public ProjectCreatorOption FindProjectCreator(int id) { ProjectCreator pc = dbContext.ProjectCreators.Find(id); return(new ProjectCreatorOption { FirstName = pc.FirstName, LastName = pc.LastName, Description = pc.Description, Email = pc.Email, Id = pc.Id // might need fixing }); }
public void RestoreTargetCanBeRun() { ProjectCreator .Create(Path.Combine(TestRootPath, "project1.proj")) .Target("Restore") .TaskMessage("312D2E6ABDDC4735B437A016CED1A68E", MessageImportance.High, condition: "'$(MSBuildRestoreSessionId)' != ''") .TaskError("MSBuildRestoreSessionId was not defined", condition: "'$(MSBuildRestoreSessionId)' == ''") .TryRestore(out bool result, out BuildOutput buildOutput); result.ShouldBeTrue(buildOutput.GetConsoleLog()); buildOutput.MessageEvents.High.ShouldContain(i => i.Message == "312D2E6ABDDC4735B437A016CED1A68E" && i.Importance == MessageImportance.High, buildOutput.GetConsoleLog()); }
public void BuildOutputIsComplete() { ProjectCreator.Create() .Target("Build") .For(100, (i, creator) => creator.TaskMessage($"Message {i}", MessageImportance.High)) .TryBuild(out bool result, out BuildOutput buildOutput); result.ShouldBeTrue(buildOutput.GetConsoleLog()); buildOutput.IsShutdown.ShouldBeTrue(); buildOutput.MessageEvents.High.Count.ShouldBe(100, buildOutput.GetConsoleLog()); }
public void TaskSimple() { ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .Task("CAD7EC3FFA634946996F92FA823E3A9D") .Xml .ShouldBe( $@"<Project> <Target Name=""{ProjectCreatorConstants.DefaultTargetName}""> <CAD7EC3FFA634946996F92FA823E3A9D /> </Target> </Project>", StringCompareShould.IgnoreLineEndings); }
private static void AddWriteVersionInfoToBuildLogTask(ProjectCreator project, string targetToRun, string taskName) { var assemblyFileLocation = typeof(GitVersionTaskBase).Assembly.Location; project.UsingTaskAssemblyFile(taskName, assemblyFileLocation) .Property("GenerateAssemblyInfo", "false") .Target(targetToRun, beforeTargets: "CoreCompile;GetAssemblyVersion;GenerateNuspec") .Task(taskName, parameters: new Dictionary <string, string> { { "SolutionDirectory", "$(MSBuildProjectDirectory)" }, { "VersionFile", "$(MSBuildProjectDirectory)/gitversion.json" } }) .Target(MsBuildExeFixture.OutputTarget, dependsOnTargets: targetToRun); }
public static ProjectCreator ItemGlobalPackageReference(this ProjectCreator creator, string packageId, string version, string includeAssets = null, string excludeAssets = null, string privateAssets = null, IDictionary <string, string> metadata = null, string condition = null) { return(creator.ItemInclude( itemType: "GlobalPackageReference", include: packageId, metadata: metadata.Merge(new Dictionary <string, string> { { "Version", version }, { "IncludeAssets", includeAssets }, { "ExcludeAssets", excludeAssets }, { "PrivateAssets", privateAssets }, }), condition: condition)); }
public void ItemIncludeNotAddedIfNull() { ProjectCreator.Create(projectFileOptions: NewProjectFileOptions.None) .ItemInclude("D7DAD38333D04A5999F9791575DBB57D", null) .ItemInclude("FDA04096ED074663997F13D37E81E87A", "CBCFA7D42A3B4A1B93127FAFA13CD3DB") .Xml .ShouldBe( @"<Project> <ItemGroup> <FDA04096ED074663997F13D37E81E87A Include=""CBCFA7D42A3B4A1B93127FAFA13CD3DB"" /> </ItemGroup> </Project>", StringCompareShould.IgnoreLineEndings); }
public void CompileIsExtensibleWithBeforeAfterTargets(string targetName) { ProjectCreator noTargetsProject = ProjectCreator.Templates.NoTargetsProject( path: Path.Combine(TestRootPath, "NoTargets", "NoTargets.csproj")) .Target(targetName) .TaskMessage("503CF1EBA6DC415F95F4DB630E7C1817", MessageImportance.High) .Save(); noTargetsProject.TryBuild(restore: true, out bool result, out BuildOutput buildOutput); result.ShouldBeTrue(buildOutput.GetConsoleLog()); buildOutput.Messages.High.ShouldContain("503CF1EBA6DC415F95F4DB630E7C1817", buildOutput.GetConsoleLog()); }
public async Task BuildShouldErrorIfNoItemsToSignAndNonEmptySignPostBuildList(bool propertyIsSet) { var envVars = Environment.GetEnvironmentVariables(); using (var builder = new TestRepoBuilder(nameof(BuildShouldErrorIfNoItemsToSignAndNonEmptySignPostBuildList), _commonRepoResourcesFixture.CommonResources)) { await builder.AddDefaultRepoSetupAsync(); // Always put in the AllowEmptySignList var signingProps = ProjectCreator.Create().PropertyGroup(); signingProps.Property("AllowEmptySignList", "true"); if (propertyIsSet) { signingProps.Property("AllowEmptySignPostBuildList", "false"); } // Clear out ItemsToSignPostBuild signingProps.ItemGroup() .ItemRemove("ItemsToSignPostBuild", "@(ItemsToSignPostBuild)"); builder.AddProject(signingProps, "eng/Signing.props"); // Create a simple project builder.AddProject(ProjectCreator .Templates .SdkCsproj( targetFramework: "net6.0", outputType: "Exe") .PropertyGroup() .Property("IsPackable", "true") .Property("EnableSourceLink", "false"), "./src/FooPackage/FooPackage.csproj"); await builder.AddSimpleCSFile("src/FooPackage/Program.cs"); builder.Build( TestRepoUtils.BuildArg("configuration"), "Release", TestRepoUtils.BuildArg("restore"), TestRepoUtils.BuildArg("pack"), TestRepoUtils.BuildArg("publish"), TestRepoUtils.BuildArg("sign"), TestRepoUtils.BuildArg("projects"), Path.Combine(builder.TestRepoRoot, "src/FooPackage/FooPackage.csproj"), "/p:AutoGenerateSymbolPackages=false", "/p:PostBuildSign=true") .Should().Throw <Exception>($"build of repo {builder.TestRepoRoot} is post build signed") .WithMessage("*error : List of files to sign post-build is empty. Make sure that ItemsToSignPostBuild is configured correctly.*"); } }