mirror of
https://gitlab.com/fabinfra/fabaccess/borepin.git
synced 2025-03-12 06:41:54 +01:00
Fixed Default ConnectionData && Disabled UserSystem
This commit is contained in:
parent
f6105f10ac
commit
5034ca12c1
@ -30,8 +30,8 @@ namespace Borepin.PageModel
|
||||
#region LoadData
|
||||
public override Task LoadAPIData()
|
||||
{
|
||||
UserSystem.ManageInterface_Proxy manageInterface = (UserSystem.ManageInterface_Proxy)_API.Session.UserSystem.Manage;
|
||||
CanManageUsers = !manageInterface.IsNull;
|
||||
//UserSystem.ManageInterface_Proxy manageInterface = (UserSystem.ManageInterface_Proxy)_API.Session.UserSystem.Manage;
|
||||
//CanManageUsers = !manageInterface.IsNull;
|
||||
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
@ -13,5 +13,6 @@ namespace Borepin.Service.Storage
|
||||
|
||||
Task<ConnectionData> GetDefault();
|
||||
Task SetDefault(ConnectionData connectionData);
|
||||
Task RemoveDefault();
|
||||
}
|
||||
}
|
||||
|
@ -62,6 +62,12 @@ namespace Borepin.Service.Storage
|
||||
|
||||
connectionData_List.Remove(connectionData);
|
||||
await _SaveConnectionData(connectionData_List).ConfigureAwait(false);
|
||||
|
||||
ConnectionData connectionData_default = await GetDefault().ConfigureAwait(false);
|
||||
if (connectionData_default.Equals(connectionData))
|
||||
{
|
||||
await RemoveDefault().ConfigureAwait(false);
|
||||
}
|
||||
}
|
||||
|
||||
public async Task UpdateTimestamp(ConnectionData connectionData)
|
||||
@ -108,6 +114,12 @@ namespace Borepin.Service.Storage
|
||||
string data = JsonConvert.SerializeObject(connectionData);
|
||||
await _SecretStorageService.SetAsync(StorageKey_ConnecitonData_AutoConnect, data).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
public async Task RemoveDefault()
|
||||
{
|
||||
string data = JsonConvert.SerializeObject(null);
|
||||
await _SecretStorageService.SetAsync(StorageKey_ConnecitonData_AutoConnect, data).ConfigureAwait(false);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Private Methods
|
||||
|
@ -39,7 +39,7 @@ namespace FabAccessAPI_Test
|
||||
Assert.Fail();
|
||||
}
|
||||
|
||||
[Test]
|
||||
[Test, Ignore("")]
|
||||
public async Task Connect_InvalidCredentials()
|
||||
{
|
||||
API api = new API();
|
||||
|
@ -52,7 +52,7 @@ namespace FabAccessAPI_Test.API_TestEnv
|
||||
[TestCase("ManagerA1", 13)]
|
||||
[TestCase("MakerA1", 13)]
|
||||
[TestCase("GuestA1", 13)]
|
||||
[Order(3), Ignore("Not Implemented")]
|
||||
[Order(3), Ignore("Not implemented")]
|
||||
public async Task ListRoles(string username, int expectRolesCount)
|
||||
{
|
||||
API api = new API();
|
||||
|
@ -1,6 +1,8 @@
|
||||
using FabAccessAPI;
|
||||
using Capnp.Rpc;
|
||||
using FabAccessAPI;
|
||||
using FabAccessAPI.Schema;
|
||||
using NUnit.Framework;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
@ -40,12 +42,20 @@ namespace FabAccessAPI_Test.API_TestEnv
|
||||
ConnectionData connectionData = TestEnv.CreateConnetionData(username);
|
||||
await api.Connect(connectionData);
|
||||
|
||||
// TODO
|
||||
User user = (await api.Session.UserSystem.Manage.AddUser(username2, TestEnv.PASSWORD).ConfigureAwait(false));
|
||||
bool methodNotImplemented = false;
|
||||
|
||||
try
|
||||
{
|
||||
User user = (await api.Session.UserSystem.Manage.AddUser(username2, TestEnv.PASSWORD).ConfigureAwait(false));
|
||||
}
|
||||
catch (RpcException exception) when (string.Equals(exception.Message, "method not implemented", StringComparison.Ordinal))
|
||||
{
|
||||
methodNotImplemented = true;
|
||||
}
|
||||
|
||||
await api.Disconnect();
|
||||
|
||||
Assert.IsNull(user);
|
||||
Assert.IsTrue(methodNotImplemented);
|
||||
}
|
||||
|
||||
[TestCase("Admin1", "NewUserA1")]
|
||||
@ -62,7 +72,7 @@ namespace FabAccessAPI_Test.API_TestEnv
|
||||
|
||||
await api.Disconnect();
|
||||
|
||||
Assert.IsNull(user);
|
||||
Assert.IsNotNull(user);
|
||||
}
|
||||
|
||||
[TestCase("Admin1", "Admin1")]
|
||||
@ -82,7 +92,7 @@ namespace FabAccessAPI_Test.API_TestEnv
|
||||
Assert.AreEqual(UserSystem.ManageInterface.AddUserError.AddUserErrorEnum.alreadyExists, error);
|
||||
}
|
||||
|
||||
[TestCase("Admin1", "NewUserC1")]
|
||||
[TestCase("Admin1", "")]
|
||||
[Order(2)]
|
||||
public async Task AddUser_InvalidUsername(string username, string username2)
|
||||
{
|
||||
@ -126,7 +136,7 @@ namespace FabAccessAPI_Test.API_TestEnv
|
||||
|
||||
await api.Disconnect();
|
||||
|
||||
Assert.IsNull(user);
|
||||
Assert.IsNotNull(user);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
using FabAccessAPI;
|
||||
using FabAccessAPI.Schema;
|
||||
using NUnit.Framework;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FabAccessAPI_Test.API_TestEnv
|
||||
@ -8,19 +9,59 @@ namespace FabAccessAPI_Test.API_TestEnv
|
||||
[TestFixture]
|
||||
public class User_Test
|
||||
{
|
||||
//[TestCase("Admin1")]
|
||||
//[Order(1)]
|
||||
//public async Task InfoInterface(string username)
|
||||
//{
|
||||
// API api = new API();
|
||||
// ConnectionData connectionData = TestEnv.CreateConnetionData(username);
|
||||
// await api.Connect(connectionData);
|
||||
#region SetUp
|
||||
[SetUp]
|
||||
public async Task SetUp()
|
||||
{
|
||||
API api = new API();
|
||||
ConnectionData connectionData = TestEnv.CreateConnetionData("Admin1");
|
||||
await api.Connect(connectionData);
|
||||
|
||||
// User user = await api.Session.UserSystem.Info.GetUserSelf().ConfigureAwait(false);
|
||||
IReadOnlyList<User> user_list = await api.Session.UserSystem.Manage.GetUserList().ConfigureAwait(false);
|
||||
|
||||
// bool result = !((User.InfoInterface_Proxy)user.Info).IsNull;
|
||||
List<Task> tasks = new List<Task>();
|
||||
foreach (User u in user_list)
|
||||
{
|
||||
if (u.Username.StartsWith("New"))
|
||||
{
|
||||
tasks.Add(api.Session.UserSystem.Manage.RemoveUser(u));
|
||||
}
|
||||
}
|
||||
|
||||
// await api.Disconnect();
|
||||
//}
|
||||
await Task.WhenAll(tasks);
|
||||
}
|
||||
#endregion
|
||||
|
||||
[TestCase("Admin1", "NewMakerA1", "UseA", "ReadA", "DiscloseA")]
|
||||
[Order(1)]
|
||||
public async Task AddRoles(string username, string username2, params string[] roles)
|
||||
{
|
||||
API api = new API();
|
||||
ConnectionData connectionData = TestEnv.CreateConnetionData(username);
|
||||
await api.Connect(connectionData);
|
||||
|
||||
await api.Session.UserSystem.Manage.AddUser(username2, TestEnv.PASSWORD);
|
||||
|
||||
User user = (await api.Session.UserSystem.Search.GetUserByName(username2).ConfigureAwait(false)).Just;
|
||||
|
||||
foreach(string s in roles)
|
||||
{
|
||||
await user.Admin.AddRole(new Role() { Name = s }).ConfigureAwait(false);
|
||||
}
|
||||
|
||||
user = (await api.Session.UserSystem.Search.GetUserByName(username2).ConfigureAwait(false)).Just;
|
||||
List<Role> user_roles = new List<Role>(await user.Info.ListRoles().ConfigureAwait(false));
|
||||
|
||||
await api.Disconnect();
|
||||
|
||||
Assert.Multiple(() =>
|
||||
{
|
||||
Assert.AreEqual(3, user_roles.Count);
|
||||
foreach (string s in roles)
|
||||
{
|
||||
Assert.IsTrue(user_roles.Exists(x => x.Name == s));
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,7 @@
|
||||
using FabAccessAPI;
|
||||
using FabAccessAPI.Schema;
|
||||
using NUnit.Framework;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace FabAccessAPI_Test.API_TestEnv
|
||||
@ -93,11 +91,11 @@ namespace FabAccessAPI_Test.API_TestEnv
|
||||
});
|
||||
}
|
||||
|
||||
[TestCase("Admin1", "somerole")]
|
||||
[TestCase("ManagerA1")]
|
||||
[TestCase("MakerA1")]
|
||||
[TestCase("GuestA1")]
|
||||
[Order(5), Ignore("Not Implemented")]
|
||||
[TestCase("Admin1", "Admin", "ManageUsers")]
|
||||
[TestCase("ManagerA1", "ManageA", "UseA", "ReadA", "DiscloseA", "ManageUsers")]
|
||||
[TestCase("MakerA1", "UseA", "ReadA", "DiscloseA")]
|
||||
[TestCase("GuestA1", "ReadA", "DiscloseA")]
|
||||
[Order(5)]
|
||||
public async Task ListUserRoles(string username, params string[] expect_roles)
|
||||
{
|
||||
API api = new API();
|
||||
|
@ -7,7 +7,7 @@ namespace FabAccessAPI_Test
|
||||
public static class TestEnv
|
||||
{
|
||||
public const string SCHEMA = "fabaccess";
|
||||
public const string TESTSERVER = "bffh.lab.bln.kjknet.de";
|
||||
public const string TESTSERVER = "127.0.0.1";//"bffh.lab.bln.kjknet.de";
|
||||
public const int TESTSERVER_PORT = 59666;
|
||||
public const string PASSWORD = "secret";
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user