public void ReadJsonReturnedTypeNotNullTest() { //Arrange var testJson = BaseTests.GetTestJsonString(); //Act WeeklyAvailability result = JsonConvert.DeserializeObject <WeeklyAvailability>(testJson); //Assert Assert.IsNotNull(result); }
public void Directory_Get_VSTeam() { // Arrange var ps = BaseTests.PrepPowerShell(); // Act var target = new Directory("Teams", "Team", ps); // Assert Assert.AreEqual("Get-VSTeam", target.Command); }
public void Releases_Constructor() { // Arrange var ps = BaseTests.PrepPowerShell(); // Act var target = new Releases(ps, "Project Name"); // Assert Assert.AreEqual("vsteam_lib.Provider.Release", target.TypeName, "TypeName"); }
public async Task GetAccountInformationTest() => await BaseTests.AccountInformationTestAsync( async (api, cancellationToken) => { var information = await api.GetAccountInformationAsync(cancellationToken); Assert.IsTrue(information.RequestCount > 0, nameof(information.RequestCount)); Assert.IsTrue(information.RequestLimit > 0, nameof(information.RequestLimit)); Assert.IsTrue(information.ConcurrencyLimit > 0, nameof(information.ConcurrencyLimit)); return(information); });
public void GitRef_Constructor() { // Arrange var obj = BaseTests.LoadJson("Get-VSTeamGitRef.json"); // Act var actual = new GitRef(obj[0], "TestProject"); // Assert Assert.IsNotNull(actual.Creator, "Creator"); Assert.AreEqual("refs/heads/master", actual.RefName, "RefName"); }
public async Task ProxyCustomHeadersGetAsyncTest() => await BaseTests.TextTestAsync( async (api, cancellationToken) => { var response = await api.GetAsync("http://httpbin.org/anything", proxyMode: true, headers: new Dictionary <string, string> { { "X-MyHeader", "123" }, }, cancellationToken: cancellationToken); Assert.IsTrue(response.Contains("\"X-Myheader\": \"123\""), response); return(response); });
public void BuildDefinition_GetChildItem_2018() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-BuildDefinition_2018.json"); var target = new BuildDefinition(obj[0], "Project Name", ps); // Act var actual = target.GetChildItem(); // Assert Assert.IsNotNull(actual, "actual"); }
public void BuildDefinitionProcessPhase_GetChildren() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-BuildDefinition_AzD.json"); var buildDef = new BuildDefinition(obj[0], "Project Name", ps); var target = (PSObject)buildDef.GetChildItem()[0]; // Act var actual = ((BuildDefinitionProcessPhase)target.ImmediateBaseObject).GetChildItem(); // Assert Assert.AreEqual(4, actual.Length); }
public void Queue_Constructor() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-VSTeamQueue.json"); // Act var target = new Queue(obj[0], "Project Name", ps); // Assert Assert.IsNotNull(target.Pool, "Pool"); Assert.AreEqual("81", target.Id, "ID"); Assert.AreEqual("DefaultPool", target.PoolName, "PoolName"); }
public async Task PutAsyncTest() => await BaseTests.TextTestAsync( async (api, cancellationToken) => { var response = await api.PutAsync("http://httpbin.org/anything", new Dictionary <string, string> { { "foo", "bar" }, }, cancellationToken: cancellationToken); Assert.IsTrue(response.Contains("\"data\": \"{\\\"foo\\\":\\\"bar\\\"}\"")); Assert.IsTrue(response.Contains("\"form\": {}")); Assert.IsTrue(response.Contains("\"json\": {\n \"foo\": \"bar\"\n }")); return(response); });
public async Task ProxySessionsGetAsyncTest() => await BaseTests.TextTestAsync( async (api, cancellationToken) => { const long id = long.MaxValue; var response1 = await api.GetAsync("http://httpbin.org/ip", proxyMode: true, sessionNumber: id, cancellationToken: cancellationToken); var response2 = await api.GetAsync("http://httpbin.org/ip", proxyMode: true, sessionNumber: id, cancellationToken: cancellationToken); Assert.AreEqual(response1, response2, "Responses are not equal"); return(response1 + Environment.NewLine + response2); });
public void Permissions_GetChildItem() { // Arrange var ps = BaseTests.PrepPowerShell(); var target = new Permissions("Permissions", ps); // Act var actual = target.GetChildItem(); // Assert Assert.AreEqual(2, actual.Length); Assert.AreEqual("Groups", ((Directory)actual[0]).Name); Assert.AreEqual("Users", ((Directory)actual[1]).Name); }
public void Environment_GetChildItem() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-VSTeamRelease-id178-expandEnvironments.json", false); var envs = obj[0].GetValue <object[]>("environments"); var target = new Environment((PSObject)envs[0], 178, "projectName", ps); // Act var children = target.GetChildItem(); // Assert Assert.AreEqual(1, children.Length); }
public void UserEntitlementTests_Constructor_ById() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-VSTeamUserEntitlement-Id.json", false); // Act var target = new UserEntitlement(obj[0]); // Assert Assert.AreEqual("*****@*****.**", target.Email, "Email"); Assert.AreEqual("Donovan Brown", target.UserName, "UserName"); Assert.AreEqual("Early Adopter", target.AccessLevelName, "AccessLevelName"); }
public void BuildDefinition_GetChildItem_AzD_YAML() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-BuildDefinition_AzD.json"); var target = new BuildDefinition(obj[7], "Project Name", ps); // Act var actual = target.GetChildItem(); // Assert Assert.IsNotNull(actual, "actual"); Assert.AreEqual(1, actual.Length, "actual.Length"); }
public void AccessControlList_Constructor() { // Arrange var obj = BaseTests.LoadJson("Get-VSTeamAccessControlList.json"); // Act var target = new AccessControlList(obj[0]); // Assert Assert.AreEqual(1, target.Aces.Count, "Aces"); Assert.AreEqual(true, target.InheritPermissions, "InheritPermissions"); Assert.AreEqual("$/00000000-0000-0000-0000-000000000001", target.Token, "Token"); Assert.AreEqual("$/00000000-0000-0000-0000-000000000001", target.ToString(), "ToString()"); }
public void BuildDefinition_Constructor_2018() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-BuildDefinition_2018.json"); // Act var actual = new BuildDefinition(obj[0], "Project Name", ps); // Assert Assert.IsNotNull(actual.Tags, "Tags"); Assert.AreEqual(0, actual.Tags.Count, "Tags.Count"); Assert.IsNull(actual.Demands, "Demands"); Assert.IsNotNull(actual.Queue, "Queue"); Assert.IsNotNull(actual.Variables, "Variables"); Assert.IsNotNull(actual.AuthoredBy, "AuthoredBy"); Assert.IsNotNull(actual.Repository, "Repository"); Assert.IsNotNull(actual.GitRepository, "GitRepository"); Assert.IsNotNull(actual.RetentionRules, "RetentionRules"); Assert.AreEqual("8/23/2020 3:16:22 pm", actual.CreatedOn.ToString("M/d/yyyy h:mm:ss tt").ToLower(), "CreatedOn"); Assert.AreEqual(5, actual.JobCancelTimeoutInMinutes, "JobCancelTimeoutInMinutes"); Assert.AreEqual("projectCollection", actual.JobAuthorizationScope, "JobAuthorizationScope"); Assert.AreEqual("$(date:yyyyMMdd)$(rev:.r)", actual.BuildNumberFormat, "BuildNumberFormat"); Assert.IsNotNull(actual.Options, "Options"); Assert.AreEqual(2, actual.Options.Count, "Options.Count"); Assert.IsNull(actual.Triggers, "Triggers"); Assert.AreEqual(27, actual.Id, "Id"); Assert.AreEqual("CI", actual.Name, "Name"); Assert.AreEqual("\\", actual.Path, "Path"); Assert.AreEqual(1, actual.Revision, "Revision"); Assert.IsNotNull(actual.Process, "Process"); Assert.AreEqual(1, actual.Process.Phases.Count, "Process.Steps.Count"); Assert.AreEqual("Number of phases: 1", actual.Process.ToString(), "Process.ToString()"); Assert.IsNotNull(actual.Process.Phases[0].Steps, "Process.Phases[0].Steps"); Assert.IsNotNull(actual.Process.Phases[0].Target, "Process.Phases[0].Target"); Assert.AreEqual(6, actual.Process.Phases[0].StepCount, "Process.Phases[0].StepsCount"); Assert.AreEqual(6, actual.Process.Phases[0].Steps.Count, "Process.Phases[0].Steps.Count"); Assert.AreEqual("succeeded()", actual.Process.Phases[0].Condition, "Process.Phases[0].Condition"); Assert.AreEqual(1, actual.Process.Phases[0].JobCancelTimeoutInMinutes, "Process.Phases[0].JobCancelTimeoutInMinutes"); Assert.AreEqual("projectCollection", actual.Process.Phases[0].JobAuthorizationScope, "Process.Phases[0].JobAuthorizationScope"); }
public void ReadJsonReturnedTypeCorrectFieldsTest() { //Arrange var testJson = BaseTests.GetTestJsonString(); //Act WeeklyAvailability result = JsonConvert.DeserializeObject <WeeklyAvailability>(testJson); //Assert Assert.AreEqual(result.FacilityId, "e9f7bd81-965d-4464-b607-999112b56022"); Assert.AreEqual(result.SlotDurationMinutes, 10); Assert.AreEqual(result.DaysAvailability.Count, 3); }
public async Task BatchTest() => await BaseTests.ApiTestAsync(async (api, cancellationToken) => { var dictionary = await api.BatchAsync(new [] { "8.8.8.8", "8.8.8.8/city", }, cancellationToken); Assert.IsNotNull(dictionary, nameof(dictionary)); foreach (var pair in dictionary) { Console.WriteLine($"{pair.Key}: {pair.Value}"); } });
public void AgentPool_Constructor_Hosted() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-VSTeamPool.json"); // Act var target = new AgentPool(obj[1], ps); // Assert Assert.AreEqual(2, target.Id, "Id"); Assert.AreEqual(15, target.Count, "Count"); Assert.AreEqual(true, target.IsHosted, "IsHosted"); Assert.AreEqual("d-r-s-", target.DisplayMode, "DisplayMode"); }
public void Releases_GetChildItem() { // Arrange var ps = BaseTests.PrepPowerShell(); var target = new Releases(ps, "Project Name"); var obj = BaseTests.LoadJson("Get-VSTeamRelease.json"); var releases = new Collection <PSObject>(obj.Select(o => PSObject.AsPSObject(o)).ToList()); ps.Invoke().Returns(releases); // Act var children = target.GetChildItem(); // Assert Assert.AreEqual(2, children.Length, "Length"); }
public void Environment_Constructor() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-VSTeamRelease-id178-expandEnvironments.json", false); var envs = obj[0].GetValue <object[]>("environments"); // Act var target = new Environment((PSObject)envs[0], 178, "projectName", ps); // Assert Assert.AreEqual(2149, target.Id, "Id"); Assert.AreEqual(178, target.ReleaseId, "ReleaseId"); Assert.AreEqual("succeeded", target.Status, "Status"); Assert.AreEqual(2149, target.EnvironmentId, "EnvironmentId"); }
public void Account_Get_ChildItem_Should_Return_Permissions() { // Arrange var ps = BaseTests.PrepPowerShell(); ps.Invoke().Returns(new Collection <PSObject>()); var target = new Account("Accounts", ps); Versions.Graph = "6.0-preview"; // Act var actual = target.GetChildItem(); // Assert Assert.AreEqual(4, actual.Length); }
public void Release_GetChildItem() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-VSTeamRelease-id178-expandEnvironments.json", false); var target = new Release(obj[0], ps, "Project Name"); var envs = obj[0].GetValue <object[]>("environments"); var environments = new Collection <PSObject>(envs.Select(e => PSObject.AsPSObject(e)).ToList()); ps.Invoke().Returns(environments); // Act var children = target.GetChildItem(); // Assert Assert.AreEqual(19, children.Length); }
public void GitRepository_GetChildItem() { // Arrange var ps = BaseTests.PrepPowerShell(); var gitRefs = BaseTests.LoadJson("Get-VSTeamGitRef.json"); var obj = BaseTests.LoadJson("Get-VSTeamGitRepository.json"); var target = new GitRepository(obj[0], "Project Name", ps); ps.Invoke().Returns(gitRefs); // Act var actual = target.GetChildItem(); // Assert Assert.AreEqual(1, actual.Length); ps.Received().AddCommand("Get-VSTeamGitRef"); }
public void DescriptorTests_Constructor() { // Arrange var obj = BaseTests.LoadJson("descriptor.scope.TestProject.json", false); var n = System.Environment.NewLine; var expectedLinks = $"Self: https://vssps.dev.azure.com/test/_apis/Graph/Descriptors/010d06f0-00d5-472a-bb47-58947c230876{n}StorageKey: https://vssps.dev.azure.com/test/_apis/Graph/StorageKeys/scp.ZGU5ODYwOWEtZjRiMC00YWEzLTgzOTEtODI4ZDU2MDI0MjU2{n}Subject: https://vssps.dev.azure.com/test/_apis/Graph/Scopes/scp.ZGU5ODYwOWEtZjRiMC00YWEzLTgzOTEtODI4ZDU2MDI0MjU2{n}"; // Act var target = new Descriptor(obj[0]); // Assert Assert.IsNotNull(target.Links, "Links"); Assert.AreEqual(expectedLinks, target.Links.ToString(), "ToString"); Assert.AreEqual("scp.ZGU5ODYwOWEtZjRiMC00YWEzLTgzOTEtODI4ZDU2MDI0MjU2", target.Name, "Name"); Assert.AreEqual("scp.ZGU5ODYwOWEtZjRiMC00YWEzLTgzOTEtODI4ZDU2MDI0MjU2", target.ToString(), "ToString"); Assert.AreEqual("https://vssps.dev.azure.com/test/_apis/Graph/Scopes/scp.ZGU5ODYwOWEtZjRiMC00YWEzLTgzOTEtODI4ZDU2MDI0MjU2", target.Links.Subject, "Links.Subject"); }
public void ClassificationNodeTests_Constructor_ById() { // Arrange var obj = BaseTests.LoadJson("Get-VSTeamClassificationNode-depth3-ids82.json"); // Act var target = new ClassificationNode(obj[0], "Project Name"); // Assert Assert.IsNull(target.ParentUrl, "ParentUrl"); Assert.IsNotNull(target.Children, "Children"); Assert.AreEqual(true, target.HasChildren, "HasChildren"); Assert.AreEqual(Guid.Empty, target.Identifier, "Identifier"); Assert.AreEqual("\\PeopleTracker\\Iteration", target.Path, "Path"); Assert.AreEqual("iteration", target.StructureType, "StructureType"); Assert.AreEqual("https://dev.azure.com/Test/00000000-0000-0000-0000-000000000000/_apis/wit/classificationNodes/Iterations", target.Url, "Url"); }
public void AgentPool_GetChildItem() { // Arrange var ps = BaseTests.PrepPowerShell(); var pools = BaseTests.LoadJson("Get-VSTeamPool.json"); var agents = BaseTests.LoadJson("Get-VSTeamAgent-PoolId1.json"); ps.Invoke().Returns(agents); var target = new AgentPool(pools[0], ps); // Act var actual = target.GetChildItem(); // Assert Assert.AreEqual(4, actual.Length); ps.Received().AddCommand("Get-VSTeamAgent"); }
public void Agent_GetChildItem() { // Arrange var ps = BaseTests.PrepPowerShell(); var agents = BaseTests.LoadJson("Get-VSTeamPool.json"); var jobRequests = BaseTests.LoadJson("Get-VSTeamJobRequest-PoolId1-AgentID111.json"); ps.Invoke().Returns(jobRequests); var target = new Agent(agents[0], 1, ps); // Act var actual = target.GetChildItem(); // Assert Assert.AreEqual(3, actual.Length); ps.Received().AddCommand("Get-VSTeamJobRequest"); }
public void Build_Constructor() { // Arrange var ps = BaseTests.PrepPowerShell(); var obj = BaseTests.LoadJson("Get-VSTeamBuild.json"); // Act var actual = new Build(obj[0], "Project Name", ps); // Assert Assert.AreEqual("81", actual.QueueId, "QueueId"); Assert.IsNotNull(actual.RequestedBy, "RequestedBy"); Assert.IsNotNull(actual.RequestedFor, "RequestedFor"); Assert.AreEqual("completed", actual.Status, "Status"); Assert.AreEqual("succeeded", actual.Result, "Result"); Assert.IsNotNull(actual.LastChangedBy, "LastChangedBy"); Assert.AreEqual("568", actual.BuildNumber, "BuildNumber"); Assert.AreEqual("Default", actual.QueueName, "QueueName"); Assert.AreEqual("TfsGit", actual.RepositoryType, "RepositoryType"); Assert.AreEqual("PTracker-CI", actual.DefinitionName, "DefinitionName"); Assert.AreEqual("Donovan Brown", actual.RequestedByUser, "RequestedByUser"); Assert.AreEqual("Donovan Brown", actual.RequestedForUser, "RequestedForUser"); Assert.AreEqual("11/14/2019 12:49:37 am", actual.StartTime?.ToString("M/d/yyyy h:mm:ss tt").ToLower(), "startTime"); Assert.AreEqual("Microsoft.VisualStudio.Services.ReleaseManagement", actual.LastChangedByUser, "LastChangedByUser"); Assert.IsNotNull(actual.TriggerInfo, "TriggerInfo"); Assert.IsNotNull(actual.Queue, "Queue"); Assert.IsNotNull(actual.Queue.Pool, "Queue.Pool"); Assert.AreEqual("81", actual.Queue.Id, "Queue.Id"); Assert.AreEqual("Default", actual.Queue.PoolName, "Queue.PoolName"); Assert.IsNotNull(actual.BuildDefinition, "BuildDefinition"); Assert.AreEqual(23, actual.BuildDefinition.Id, "BuildDefinition.Id"); Assert.AreEqual("PTracker-CI", actual.BuildDefinition.Name, "BuildDefinition.Name"); Assert.IsNotNull(actual.Project, "Project"); Assert.AreEqual("PeopleTracker", actual.Project.Name, "Project.Name"); Assert.AreEqual("00000000-0000-0000-0000-000000000000", actual.Project.Id, "Project.Id"); Assert.AreEqual("*****@*****.**", actual.RequestedBy.UniqueName, "RequestedBy.UniqueName"); Assert.AreEqual("Donovan Brown", actual.RequestedFor.DisplayName, "RequestedFor.DisplayName"); Assert.AreEqual("Microsoft.VisualStudio.Services.ReleaseManagement", actual.LastChangedBy.ToString(), "LastChangedBy.ToString()"); }