Enable and fix AuthTests.ExternalToken (#484)
* Enable and fix AuthTests.ExternalToken * Try to fix osx
This commit is contained in:
@@ -270,60 +270,44 @@ namespace k8s.Tests
|
|||||||
|
|
||||||
#endif // NETCOREAPP2_1
|
#endif // NETCOREAPP2_1
|
||||||
|
|
||||||
#if NETSTANDARD2_0
|
|
||||||
[Fact]
|
[Fact]
|
||||||
public void ExternalToken()
|
public void ExternalToken()
|
||||||
{
|
{
|
||||||
const string token
|
const string token = "testingtoken";
|
||||||
= "testingtoken";
|
const string name = "testing_irrelevant";
|
||||||
const string name
|
|
||||||
= "testing_irrelevant";
|
|
||||||
|
|
||||||
using (var server
|
using (var server = new MockKubeApiServer(testOutput, cxt =>
|
||||||
= new MockKubeApiServer(testOutput, cxt =>
|
{
|
||||||
{
|
var header = cxt.Request.Headers["Authorization"].FirstOrDefault();
|
||||||
var header
|
|
||||||
= cxt.Request.Headers["Authorization"].FirstOrDefault();
|
|
||||||
|
|
||||||
var expect
|
var expect = new AuthenticationHeaderValue("Bearer", token).ToString();
|
||||||
= new AuthenticationHeaderValue("Bearer", token).ToString();
|
|
||||||
|
|
||||||
if (header != expect)
|
if (header != expect)
|
||||||
{
|
{
|
||||||
cxt.Response.StatusCode
|
cxt.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
|
||||||
= (int) HttpStatusCode.Unauthorized;
|
return Task.FromResult(false);
|
||||||
return Task.FromResult(false);
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return Task.FromResult(true);
|
return Task.FromResult(true);
|
||||||
}))
|
}))
|
||||||
{
|
{
|
||||||
{
|
{
|
||||||
var kubernetesConfig
|
var kubernetesConfig = GetK8SConfiguration(server.Uri.ToString(), token, name);
|
||||||
= GetK8SConfiguration(server.Uri.ToString(), token, name);
|
var clientConfig = KubernetesClientConfiguration.BuildConfigFromConfigObject(kubernetesConfig, name);
|
||||||
var clientConfig
|
var client = new Kubernetes(clientConfig);
|
||||||
= KubernetesClientConfiguration.BuildConfigFromConfigObject(kubernetesConfig, name);
|
var listTask = ExecuteListPods(client);
|
||||||
var client
|
|
||||||
= new Kubernetes(clientConfig);
|
|
||||||
var listTask
|
|
||||||
= ExecuteListPods(client);
|
|
||||||
Assert.True(listTask.Response.IsSuccessStatusCode);
|
Assert.True(listTask.Response.IsSuccessStatusCode);
|
||||||
Assert.Equal(1, listTask.Body.Items.Count);
|
Assert.Equal(1, listTask.Body.Items.Count);
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
var kubernetesConfig
|
var kubernetesConfig = GetK8SConfiguration(server.Uri.ToString(), "wrong token", name);
|
||||||
= GetK8SConfiguration(server.Uri.ToString(), "wrong token", name);
|
var clientConfig = KubernetesClientConfiguration.BuildConfigFromConfigObject(kubernetesConfig, name);
|
||||||
var clientConfig
|
var client = new Kubernetes(clientConfig);
|
||||||
= KubernetesClientConfiguration.BuildConfigFromConfigObject(kubernetesConfig, name);
|
var listTask = ExecuteListPods(client);
|
||||||
var client
|
|
||||||
= new Kubernetes(clientConfig);
|
|
||||||
var listTask
|
|
||||||
= ExecuteListPods(client);
|
|
||||||
Assert.Equal(HttpStatusCode.Unauthorized, listTask.Response.StatusCode);
|
Assert.Equal(HttpStatusCode.Unauthorized, listTask.Response.StatusCode);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif // NETSTANDARD2_0
|
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
public void Token()
|
public void Token()
|
||||||
@@ -447,12 +431,15 @@ namespace k8s.Tests
|
|||||||
arguments = ($"/c echo {responseJson}").Split(" ");
|
arguments = ($"/c echo {responseJson}").Split(" ");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux) ||
|
if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
|
||||||
RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
|
|
||||||
{
|
{
|
||||||
arguments = new[] { responseJson };
|
arguments = new[] { responseJson.Replace("\"", "\\\"") };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
|
||||||
|
{
|
||||||
|
arguments = new[] { "\"%s\"", responseJson.Replace("\"", "\\\"") };
|
||||||
|
}
|
||||||
|
|
||||||
var users = new List<User>
|
var users = new List<User>
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user