improvements
This commit is contained in:
parent
534040b6d7
commit
0bf492f2c3
|
|
@ -1,22 +1,14 @@
|
|||
using System;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using AyCode.Database.Tests;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using Moq;
|
||||
using TIAM.Database.DataLayers.Users;
|
||||
using TIAM.Database.DbContexts;
|
||||
using TIAM.Entities.Users;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using Microsoft.EntityFrameworkCore.ChangeTracking;
|
||||
using System.Net.Sockets;
|
||||
|
||||
namespace TIAM.Database.Tests.DataLayers.Users
|
||||
namespace TIAM.Database.Test
|
||||
{
|
||||
[TestClass]
|
||||
public class UserDalTests
|
||||
public class UserDalTests : DatabaseTestModelBase
|
||||
{
|
||||
private Mock<UserDbContext> _mockContext;
|
||||
private UserDal _userDal;
|
||||
|
|
|
|||
|
|
@ -86,7 +86,7 @@ namespace TIAMMobilApp.Services
|
|||
|
||||
|
||||
|
||||
string result = string.Empty;
|
||||
var result = string.Empty;
|
||||
var url = APIUrls.AuthenticateUser;
|
||||
|
||||
var response = await http.PostAsJsonAsync(url, loginModel);
|
||||
|
|
@ -108,9 +108,8 @@ namespace TIAMMobilApp.Services
|
|||
|
||||
public async Task<(bool isSuccess, string ErrorMessage)> CreateUser(RegistrationModel regModel)
|
||||
{
|
||||
|
||||
bool isSuccess = true;
|
||||
string result = string.Empty;
|
||||
var isSuccess = true;
|
||||
var result = string.Empty;
|
||||
var url = APIUrls.CreateUser;
|
||||
|
||||
var response = await http.PostAsJsonAsync(url, regModel);
|
||||
|
|
@ -142,7 +141,8 @@ namespace TIAMMobilApp.Services
|
|||
|
||||
public async Task<bool> RefreshToken()
|
||||
{
|
||||
bool isTokenRefreshed = false;
|
||||
var isTokenRefreshed = false;
|
||||
|
||||
using (var client = new HttpClient())
|
||||
{
|
||||
var url = APIUrls.RefreshToken;
|
||||
|
|
@ -158,7 +158,7 @@ namespace TIAMMobilApp.Services
|
|||
var response = await client.PostAsync(url, new StringContent(serializedStr, Encoding.UTF8, "application/json"));
|
||||
if (response.IsSuccessStatusCode)
|
||||
{
|
||||
string contentStr = await response.Content.ReadAsStringAsync();
|
||||
var contentStr = await response.Content.ReadAsStringAsync();
|
||||
var mainResponse = JsonConvert.DeserializeObject<MainResponse>(contentStr);
|
||||
if (mainResponse.IsSuccess)
|
||||
{
|
||||
|
|
@ -166,7 +166,7 @@ namespace TIAMMobilApp.Services
|
|||
Setting.UserBasicDetails.AccessToken = tokenDetails.AccessToken;
|
||||
Setting.UserBasicDetails.RefreshToken = tokenDetails.RefreshToken;
|
||||
|
||||
string userDetailsStr = JsonConvert.SerializeObject(Setting.UserBasicDetails);
|
||||
var userDetailsStr = JsonConvert.SerializeObject(Setting.UserBasicDetails);
|
||||
await secureStorageHandler.SaveToSecureStorageAsync(nameof(Setting.UserBasicDetails), userDetailsStr);
|
||||
isTokenRefreshed = true;
|
||||
}
|
||||
|
|
@ -174,7 +174,7 @@ namespace TIAMMobilApp.Services
|
|||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
string msg = ex.Message;
|
||||
var msg = ex.Message;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -187,7 +187,7 @@ namespace TIAMMobilApp.Services
|
|||
{
|
||||
|
||||
//get the userModel's roles
|
||||
int role = User.UserRoles;
|
||||
var role = User.UserRoles;
|
||||
|
||||
foreach (var roleType in roleTypes)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -21,7 +21,12 @@ namespace TIAMWebApp.Client.Services
|
|||
private readonly IJSRuntime jsRuntime;
|
||||
private readonly LogToBrowserConsole logToBrowserConsole;
|
||||
public UserModel? User { get; set; } = new UserModel("", "", "");
|
||||
public Dictionary<int, string> userRoleTypes { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
|
||||
|
||||
public Dictionary<int, string> userRoleTypes
|
||||
{
|
||||
get => throw new NotImplementedException();
|
||||
set => throw new NotImplementedException();
|
||||
}
|
||||
|
||||
public UserDataService(HttpClient http, ISecureStorageHandler secureStorageHandler, IJSRuntime jSRuntime)
|
||||
{
|
||||
|
|
@ -33,18 +38,18 @@ namespace TIAMWebApp.Client.Services
|
|||
|
||||
|
||||
public List<RoleType> roleTypes = new List<RoleType>
|
||||
{
|
||||
new RoleType { Id = 1, RoleName = "Login" },
|
||||
new RoleType { Id = 2, RoleName = "Member" },
|
||||
new RoleType { Id = 4, RoleName = "Vip" },
|
||||
new RoleType { Id = 8, RoleName = "Uvip" },
|
||||
new RoleType { Id = 16, RoleName = "Volunteer" },
|
||||
new RoleType { Id = 32, RoleName = "Guide" },
|
||||
new RoleType { Id = 64, RoleName = "Protector" },
|
||||
new RoleType { Id = 128, RoleName = "Admin" },
|
||||
new RoleType { Id = 256, RoleName = "SuperAdmin" },
|
||||
new RoleType { Id = 512, RoleName = "God" }
|
||||
};
|
||||
{
|
||||
new RoleType { Id = 1, RoleName = "Login" },
|
||||
new RoleType { Id = 2, RoleName = "Member" },
|
||||
new RoleType { Id = 4, RoleName = "Vip" },
|
||||
new RoleType { Id = 8, RoleName = "Uvip" },
|
||||
new RoleType { Id = 16, RoleName = "Volunteer" },
|
||||
new RoleType { Id = 32, RoleName = "Guide" },
|
||||
new RoleType { Id = 64, RoleName = "Protector" },
|
||||
new RoleType { Id = 128, RoleName = "Admin" },
|
||||
new RoleType { Id = 256, RoleName = "SuperAdmin" },
|
||||
new RoleType { Id = 512, RoleName = "God" }
|
||||
};
|
||||
|
||||
|
||||
public async Task<UserModel> IsLoggedInAsync()
|
||||
|
|
@ -71,6 +76,7 @@ namespace TIAMWebApp.Client.Services
|
|||
{
|
||||
User = new UserModel("", "", "");
|
||||
}
|
||||
|
||||
//simply return true for now
|
||||
User.IsLoggedIn = true;
|
||||
User.UserType = (UserType)userType;
|
||||
|
|
@ -90,7 +96,7 @@ namespace TIAMWebApp.Client.Services
|
|||
|
||||
|
||||
|
||||
string result = string.Empty;
|
||||
var result = string.Empty;
|
||||
var url = APIUrls.AuthenticateUser;
|
||||
|
||||
var response = await http.PostAsJsonAsync(url, loginModel);
|
||||
|
|
@ -106,17 +112,16 @@ namespace TIAMWebApp.Client.Services
|
|||
|
||||
//result = await response.Content.ReadAsStringAsync();
|
||||
return result;
|
||||
|
||||
|
||||
}
|
||||
|
||||
public async Task<(bool isSuccess, string ErrorMessage)> CreateUser(RegistrationModel regModel)
|
||||
{
|
||||
|
||||
bool isSuccess = true;
|
||||
string result = string.Empty;
|
||||
var isSuccess = true;
|
||||
var result = string.Empty;
|
||||
var url = $"{Setting.BaseUrl}/{APIUrls.CreateUser}";
|
||||
|
||||
logToBrowserConsole.LogToBC("CreateUser url: " + url);
|
||||
|
||||
var response = await http.PostAsJsonAsync(url, regModel);
|
||||
result = await response.Content.ReadAsStringAsync();
|
||||
/*if (response.IsSuccessStatusCode)
|
||||
|
|
@ -147,55 +152,52 @@ namespace TIAMWebApp.Client.Services
|
|||
public async Task<bool> RefreshToken()
|
||||
{
|
||||
logToBrowserConsole.LogToBC("RefreshToken() called");
|
||||
bool isTokenRefreshed = false;
|
||||
using (var client = new HttpClient())
|
||||
var isTokenRefreshed = false;
|
||||
|
||||
using var client = new HttpClient();
|
||||
var url = $"{Setting.BaseUrl}{APIUrls.RefreshToken}";
|
||||
//var url = APIUrls.RefreshToken;
|
||||
|
||||
var serializedStr = JsonConvert.SerializeObject(new AuthenticateRequestAndResponse
|
||||
{
|
||||
var url = $"{Setting.BaseUrl}{APIUrls.RefreshToken}";
|
||||
//var url = APIUrls.RefreshToken;
|
||||
RefreshToken = Setting.UserBasicDetails.RefreshToken,
|
||||
AccessToken = Setting.UserBasicDetails.AccessToken
|
||||
});
|
||||
|
||||
var serializedStr = JsonConvert.SerializeObject(new AuthenticateRequestAndResponse
|
||||
try
|
||||
{
|
||||
logToBrowserConsole.LogToBC("Refreshtoken url: " + url);
|
||||
var response = await client.PostAsync(url, new StringContent(serializedStr, Encoding.UTF8, "application/json"));
|
||||
if (response.IsSuccessStatusCode)
|
||||
{
|
||||
RefreshToken = Setting.UserBasicDetails.RefreshToken,
|
||||
AccessToken = Setting.UserBasicDetails.AccessToken
|
||||
});
|
||||
|
||||
try
|
||||
{
|
||||
logToBrowserConsole.LogToBC("Refreshtoken url: " + url);
|
||||
var response = await client.PostAsync(url, new StringContent(serializedStr, Encoding.UTF8, "application/json"));
|
||||
if (response.IsSuccessStatusCode)
|
||||
var contentStr = await response.Content.ReadAsStringAsync();
|
||||
var mainResponse = JsonConvert.DeserializeObject<MainResponse>(contentStr);
|
||||
if (mainResponse is { IsSuccess: true })
|
||||
{
|
||||
string contentStr = await response.Content.ReadAsStringAsync();
|
||||
var mainResponse = JsonConvert.DeserializeObject<MainResponse>(contentStr);
|
||||
if (mainResponse.IsSuccess)
|
||||
{
|
||||
var tokenDetails = JsonConvert.DeserializeObject<AuthenticateRequestAndResponse>(mainResponse.Content.ToString());
|
||||
Setting.UserBasicDetails.AccessToken = tokenDetails.AccessToken;
|
||||
Setting.UserBasicDetails.RefreshToken = tokenDetails.RefreshToken;
|
||||
var tokenDetails = JsonConvert.DeserializeObject<AuthenticateRequestAndResponse>(mainResponse.Content.ToString());
|
||||
Setting.UserBasicDetails.AccessToken = tokenDetails.AccessToken;
|
||||
Setting.UserBasicDetails.RefreshToken = tokenDetails.RefreshToken;
|
||||
|
||||
string userDetailsStr = JsonConvert.SerializeObject(Setting.UserBasicDetails);
|
||||
await secureStorageHandler.SaveToSecureStorageAsync(nameof(Setting.UserBasicDetails), userDetailsStr);
|
||||
isTokenRefreshed = true;
|
||||
}
|
||||
var userDetailsStr = JsonConvert.SerializeObject(Setting.UserBasicDetails);
|
||||
await secureStorageHandler.SaveToSecureStorageAsync(nameof(Setting.UserBasicDetails), userDetailsStr);
|
||||
isTokenRefreshed = true;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
string msg = ex.Message;
|
||||
logToBrowserConsole.LogToBC("Refreshtoken exception: " + ex.ToString());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
var msg = ex.Message;
|
||||
logToBrowserConsole.LogToBC("Refreshtoken exception: " + ex.ToString());
|
||||
}
|
||||
|
||||
return isTokenRefreshed;
|
||||
}
|
||||
|
||||
|
||||
public Task<Dictionary<int, string>> GetUserRolesAsync(UserModel userModel)
|
||||
{
|
||||
|
||||
//get the userModel's roles
|
||||
int role = User.UserRoles;
|
||||
var role = User.UserRoles;
|
||||
|
||||
foreach (var roleType in roleTypes)
|
||||
{
|
||||
|
|
@ -207,8 +209,8 @@ namespace TIAMWebApp.Client.Services
|
|||
|
||||
}
|
||||
}
|
||||
return Task.FromResult(userRoleTypes);
|
||||
|
||||
return Task.FromResult(userRoleTypes);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue