76 lines
2.6 KiB
C#
76 lines
2.6 KiB
C#
using Knoks.Api.Client;
|
|
using Knoks.Api.Client.Invoker;
|
|
using Knoks.Test.Integrations.Api.Tools;
|
|
using System;
|
|
using System.Net;
|
|
using System.Threading.Tasks;
|
|
using Xunit;
|
|
|
|
namespace Knoks.Test.Integrations.Api
|
|
{
|
|
public class TokenControllerTest : ApiTestClient
|
|
{
|
|
[Fact(DisplayName = "Get Api Consumer Token")]
|
|
async Task GetApiConsumerTokenTest()
|
|
{
|
|
var res = await ApiClient.GetApiConsumerToken();
|
|
Assert.NotNull(res.Object);
|
|
}
|
|
|
|
[Fact(DisplayName = "Invalid Api Identifier")]
|
|
async Task InvalidBrandIdentifier()
|
|
{
|
|
var tmpClient = new ApiClient(Guid.NewGuid().ToString("N"), ApiClient.HttpClient);
|
|
var res = await tmpClient.GetApiConsumerToken();
|
|
Assert.Equal(ApiErrorType.InvalidApiIdentifier, res.ApiResponse.Error.Id);
|
|
}
|
|
|
|
[Fact(DisplayName = "Refresh")]
|
|
async Task Refresh()
|
|
{
|
|
await ApiClient.AuthorizeApiConsumer();
|
|
var res = await ApiClient.InvokeTokenRefresh();
|
|
|
|
Assert.Null(res.ApiResponse.Error);
|
|
Assert.NotNull(res.ApiResponse.Result);
|
|
}
|
|
|
|
[Fact(DisplayName = "Unotorized Refresh")]
|
|
async Task UnotorizedRefresh()
|
|
{
|
|
var res = await ApiClient.InvokeTokenRefresh();
|
|
Assert.Equal(HttpStatusCode.Unauthorized, res.HttpResponse.StatusCode);
|
|
}
|
|
|
|
[Fact(DisplayName = "Heartbit")]
|
|
async Task Heartbit()
|
|
{
|
|
await ApiClient.AuthorizeApiConsumer();
|
|
var res = (await ApiClient.InvokeTokenHeartbit()).Object;
|
|
|
|
Assert.True(res.Value);
|
|
}
|
|
|
|
[Fact(DisplayName = "Unotorized Heartbit")]
|
|
async Task UnotorizedHeartbit()
|
|
{
|
|
var res = await ApiClient.InvokeTokenHeartbit();
|
|
Assert.Equal(HttpStatusCode.Unauthorized, res.HttpResponse.StatusCode);
|
|
}
|
|
|
|
[Fact(DisplayName = "Invalid Username or Password")]
|
|
async Task InvalidUsernameOrPassword()
|
|
{
|
|
var response = await ApiClient.GetApiUserToken(Guid.NewGuid().ToString(), Guid.NewGuid().ToString());
|
|
Assert.Equal(ApiErrorType.InvalidUsernameOrPassword, response.ApiResponse.Error.Id);
|
|
}
|
|
|
|
[Fact(DisplayName = "Invalid OperatorName or OperatorPassword")]
|
|
async Task InvalidOperatorNameOrOperatorPassword()
|
|
{
|
|
var res = await ApiClient.GetApiOperatorToken(Guid.NewGuid().ToString(), Guid.NewGuid().ToString());
|
|
Assert.Equal(ApiErrorType.InvalidUsernameOrPassword, res.ApiResponse.Error.Id);
|
|
}
|
|
}
|
|
}
|