public void TestExpression() { var service = GetService( new[] { "--string", "--set", "1", "2", "3", "--interface-param" }); var build = new TestBuild(); ParameterService.GetFromMemberInfo(GetMemberInfo(() => build.String), typeof(AbsolutePath), service.GetParameter) .Should().BeNull(); ParameterService.GetFromMemberInfo(GetMemberInfo(() => build.String), typeof(bool), service.GetParameter) .Should().BeOfType <bool>().Subject.Should().BeTrue(); ParameterService.GetFromMemberInfo(GetMemberInfo(() => build.Set), destinationType: null, service.GetParameter) .Should().BeOfType <int[]>().Subject.Should().BeEquivalentTo(new[] { 1, 2, 3 }); ParameterService.GetFromMemberInfo(GetMemberInfo(() => ((ITestComponent)build).Param), destinationType: null, service.GetParameter) .Should().BeOfType <bool>().Subject.Should().BeTrue(); }
public async Task <IEnumerable <TestCase> > Publish(TestBuild build) { var project = build.Project; string srcPath = project.SrcDir; //looking for test files, publish them to db var dir = new DirectoryInfo(srcPath); var files = dir.GetFiles("*.feature", SearchOption.AllDirectories); var tests = new List <TestCase>(); foreach (var f in files) { string text = await f.OpenText().ReadToEndAsync(); var matches = RxTagName.Matches(text); foreach (Match m in matches) { int start = m.Index < 100 ? 0 : m.Index - 100; int end = m.Index + 100 > text.Length - 1 ? m.Index + 100 : text.Length - 1; var t = new TestCase { Name = m.Groups[1].Value, Location = f.FullName.Remove(0, srcPath.Length + 1) }; var km = RxTagKeyword.Match(text.Substring(start, end - start)); if (km.Success) { t.Keyword = km.Groups[1].Value; } tests.Add(t); } } return(tests); }
public Task Test(string testName, ITestConfigurationGenerator attribute) { var build = new TestBuild(); var relevantTargets = ExecutableTargetFactory.CreateAll(build, x => x.Compile); var stream = new MemoryStream(); attribute.Stream = new StreamWriter(stream, leaveOpen: true); attribute.Generate(build, relevantTargets); stream.Seek(offset: 0, SeekOrigin.Begin); var reader = new StreamReader(stream); var str = reader.ReadToEnd(); return(Verifier.Verify(str) .UseParameters(testName, attribute.GetType().BaseType.NotNull().Name)); }
public async Task <ActionResult> Create(int testprojectId, TestBuild model, int?testagent) { model.Project = await _projRepo.FindAsync(testprojectId); if (testagent.HasValue) { model.Agent = await _agentRepo.FindAsync(testagent); } if (ModelState.IsValid) { _buildRepo.Add(model); await _uow.CommitAsync(); return(RedirectToAction("Index", new { testprojectId })); } SetNav(model); SetViewData(); return(View("new", model)); }
public void Test(string testName, ITestConfigurationGenerator attribute) { var build = new TestBuild(); var relevantTargets = ExecutableTargetFactory.CreateAll(build, x => x.Compile); var stream = new MemoryStream(); attribute.Stream = new StreamWriter(stream, leaveOpen: true); attribute.Generate(build, relevantTargets); stream.Seek(offset: 0, SeekOrigin.Begin); var reader = new StreamReader(stream); var str = reader.ReadToEnd(); NamerFactory.AdditionalInformation = attribute.GetType().BaseType.NotNull().Name; if (testName != null) { NamerFactory.AdditionalInformation += "." + testName; } Approvals.Verify(str); }
public static IEnumerable <object[]> GetAttributes() { return(TestBuild.GetAttributes().Select(x => new object[] { x.TestName, x.Generator })); }
public void TestValueSet() { var build = new TestBuild(); var verbosities = new[]
private void SetNav(TestBuild build) { ViewBag.Nav = new TestBuildNav(build); }
public TestBuildNav(TestBuild build) : this(build.Project) { }