public void InvokePowerBIRestMethod_ModifyHeaders() { // Arrange var initFactory = new TestPowerBICmdletNoClientInitFactory(true); var testAuthenticator = initFactory.Authenticator; var accessToken = testAuthenticator.Authenticate(profile: null, logger: null, settings: null, queryParameters: null).Result; var testHeaderName = "TestExample"; var testHeaderValue = "Example"; using (var client = new HttpClient()) { var mock = new MockInvokePowerBIRestMethodCmdlet(initFactory) { Headers = new System.Collections.Hashtable() { { testHeaderName, testHeaderValue } } }; // Act mock.InvokePopulateClient(accessToken, client); // Assert Assert.AreEqual(0, client.DefaultRequestHeaders.Accept.Count); Assert.IsTrue(client.DefaultRequestHeaders.TryGetValues(testHeaderName, out IEnumerable <string> headerValues)); Assert.IsNotNull(headerValues); Assert.AreEqual(1, headerValues.Count()); Assert.AreEqual(testHeaderValue, headerValues.First()); } }
public void ConnectPowerBIServiceAccountDiscoveryUrl_NullCustomEnvironment() { // Arrange var initFactory = new TestPowerBICmdletNoClientInitFactory(false); var cmdlet = new ConnectPowerBIServiceAccount(initFactory) { DiscoveryUrl = "https://api.powerbi.com/powerbi/globalservice/v201606/environments/discover?client=powerbi-msolap" }; // Act cmdlet.InvokePowerBICmdlet(); //Assert Assert.Fail("Custom environment was not provided"); }
public void InvokePowerBIRestMethod_DefaultTimeout() { // Arrange var initFactory = new TestPowerBICmdletNoClientInitFactory(true); var testAuthenticator = initFactory.Authenticator; var accessToken = testAuthenticator.Authenticate(profile: null, logger: null, settings: null, queryParameters: null).Result; using (var client = new HttpClient()) { var mock = new MockInvokePowerBIRestMethodCmdlet(initFactory); // Act mock.InvokePopulateClient(accessToken, client); // Assert Assert.AreEqual(client.Timeout, TimeSpan.FromSeconds(100)); // default http client timeout } }
public void ConnectPowerBIServiceAccountServiceWithTenantId_PrincipalParameterSet() { // Arrange var initFactory = new TestPowerBICmdletNoClientInitFactory(false); var testTenantName = "test.microsoftonline.com"; var cmdlet = new ConnectPowerBIServiceAccount(initFactory) { Tenant = testTenantName, ServicePrincipal = true, Credential = new PSCredential("appId", new SecureString()), ParameterSet = "ServicePrincipal" }; // Act cmdlet.InvokePowerBICmdlet(); // Assert var profile = initFactory.GetProfileFromStorage(); Assert.IsNotNull(profile); Assert.IsTrue(profile.Environment.AzureADAuthority.Contains(testTenantName)); initFactory.AssertExpectedUnitTestResults(new[] { profile }); }