diff --git a/Borepin/Borepin/Model/MachineVisualize.cs b/Borepin/Borepin/Model/MachineVisualize.cs index c1011ab..baeaa71 100644 --- a/Borepin/Borepin/Model/MachineVisualize.cs +++ b/Borepin/Borepin/Model/MachineVisualize.cs @@ -27,29 +27,37 @@ namespace Borepin.Model Name = _Machine.Name; Description = _Machine.Description; State = _Machine.State; - Manager = new UserVisualize(_Machine.Manager); - Manager.LoadData(); - MachineInfoExtended machineInfoExtended = await _Machine.Manage.GetMachineInfoExtended().ConfigureAwait(false); - if(machineInfoExtended != null) + if(_Machine.Manager.Just != null) { - if (machineInfoExtended.CurrentUser == null || machineInfoExtended.CurrentUser.Username == null) + Manager = new UserVisualize(_Machine.Manager.Just); + Manager.LoadData(); + } + else + { + Manager = null; + } + + if(_Machine.Manage != null) + { + MachineInfoExtended machineInfoExtended = await _Machine.Manage.GetMachineInfoExtended().ConfigureAwait(false); + if (machineInfoExtended.CurrentUser.Just == null) { CurrentUser = null; } else { - CurrentUser = new UserVisualize(machineInfoExtended.CurrentUser); + CurrentUser = new UserVisualize(machineInfoExtended.CurrentUser.Just); CurrentUser.LoadData(); } - if (machineInfoExtended.LastUser == null || machineInfoExtended.LastUser.Username == null) + if (machineInfoExtended.LastUser.Just == null) { LastUser = null; } else { - LastUser = new UserVisualize(machineInfoExtended.LastUser); + LastUser = new UserVisualize(machineInfoExtended.LastUser.Just); LastUser.LoadData(); } } diff --git a/Borepin/Borepin/PageModel/MachineListPageModel.cs b/Borepin/Borepin/PageModel/MachineListPageModel.cs index 6422af9..0caeb94 100644 --- a/Borepin/Borepin/PageModel/MachineListPageModel.cs +++ b/Borepin/Borepin/PageModel/MachineListPageModel.cs @@ -7,7 +7,6 @@ using Prism.Navigation; using Borepin.Service.BFFH; using Borepin.Base; using FabAccessAPI.Schema; -using Prism.Services.Dialogs; using Prism.Services; using Prism.AppModel; using static FabAccessAPI.Schema.Machine; @@ -20,16 +19,12 @@ namespace Borepin.PageModel public class MachineListPageModel : ConnectionModelBase, IPageLifecycleAware { #region Private Fields - private readonly IDialogService _DialogService; - private Machine _NextMachine; #endregion #region Constructors - public MachineListPageModel(INavigationService navigationService, IPageDialogService pageDialogService, IBFFHService bFFHService, IDialogService dialogService) : base(navigationService, pageDialogService, bFFHService) + public MachineListPageModel(INavigationService navigationService, IPageDialogService pageDialogService, IBFFHService bFFHService) : base(navigationService, pageDialogService, bFFHService) { - _DialogService = dialogService; - SelectInstanceCommand = new DelegateCommand(SelectInstanceCommandExecute); ScanCodeCommand = new DelegateCommand(async () => await ScanCodeCommandExecute().ConfigureAwait(false)); RefreshCommand = new DelegateCommand(async ()=> await RefreshCommandExecute().ConfigureAwait(true)); @@ -49,14 +44,11 @@ namespace Borepin.PageModel IsConnected = true; - IMachineSystem machineSystem = (await _BFFHService.GetSession().ConfigureAwait(false)).MachineSystem; - MachineSystem.IInfoInterface machine_infoInterface = await machineSystem.Info().ConfigureAwait(false); + MachineSystem machineSystem = (await _BFFHService.GetSession().ConfigureAwait(false)).MachineSystem; + UserSystem userSystem = (await _BFFHService.GetSession().ConfigureAwait(false)).UserSystem; + User user_self = await userSystem.Info.GetUserSelf().ConfigureAwait(false); - IUserSystem userSystem = (await _BFFHService.GetSession().ConfigureAwait(false)).UserSystem; - UserSystem.IInfoInterface user_infoInterface = await userSystem.Info().ConfigureAwait(false); - User user_self = (await user_infoInterface.GetUserSelf().ConfigureAwait(false)).Item1; - - IReadOnlyList machine_list = await machine_infoInterface.GetMachineList().ConfigureAwait(false); + IReadOnlyList machine_list = await machineSystem.Info.GetMachineList().ConfigureAwait(false); List viewmodel_list_user_assigned = new List(); List viewmodel_list_not_user_assigned = new List(); @@ -159,12 +151,9 @@ namespace Borepin.PageModel return; } - IMachineSystem machineInterface = (await _BFFHService.GetSession().ConfigureAwait(false)).MachineSystem; - + MachineSystem machineInterface = (await _BFFHService.GetSession().ConfigureAwait(false)).MachineSystem; - MachineSystem.IInfoInterface infoInterface = await machineInterface.Info().ConfigureAwait(false); - - Machine machine = await infoInterface.GetMachineURN(value).ConfigureAwait(false); + Machine machine = (await machineInterface.Info.GetMachineURN(value).ConfigureAwait(false)).Just; if(machine == null) { diff --git a/Borepin/Borepin/PageModel/MachinePageModel.cs b/Borepin/Borepin/PageModel/MachinePageModel.cs index 8f73a4b..78337c9 100644 --- a/Borepin/Borepin/PageModel/MachinePageModel.cs +++ b/Borepin/Borepin/PageModel/MachinePageModel.cs @@ -40,7 +40,7 @@ namespace Borepin.PageModel return; } - IMachineSystem machineSystem; + MachineSystem machineSystem; try { machineSystem = (await _BFFHService.GetSession().ConfigureAwait(false)).MachineSystem; @@ -52,9 +52,7 @@ namespace Borepin.PageModel return; } - IInfoInterface info = await machineSystem.Info().ConfigureAwait(false); - - _Machine = await info.GetMachine(_ID).ConfigureAwait(false); + _Machine = (await machineSystem.Info.GetMachine(_ID).ConfigureAwait(false)).Just; MachineItem = new MachineVisualize(_Machine); MachineItem.LoadData(); diff --git a/Borepin/Borepin/PageModel/ScanPageModel.cs b/Borepin/Borepin/PageModel/ScanPageModel.cs index 47fe5f0..139da66 100644 --- a/Borepin/Borepin/PageModel/ScanPageModel.cs +++ b/Borepin/Borepin/PageModel/ScanPageModel.cs @@ -13,14 +13,11 @@ namespace Borepin.PageModel { #region Private Fields private object _Instance; - private readonly INavigationService _NavigationService; #endregion #region Contructors public ScanPageModel(INavigationService navigationService) : base(navigationService) { - _NavigationService = navigationService; - AbortCommand = new DelegateCommand(async () => await AbortCommandExecute().ConfigureAwait(true)); ScannedCommand = new DelegateCommand(ScannedCommandExecute); @@ -32,7 +29,7 @@ namespace Borepin.PageModel #region Data public override async Task LoadData() { - + await Task.CompletedTask.ConfigureAwait(false); } #endregion @@ -76,7 +73,7 @@ namespace Borepin.PageModel { { "result", "scanned" }, { "value", ScanResult.Text }, - { "instance", _Instance } + { "instance", _Instance }, }; Device.BeginInvokeOnMainThread(async () => @@ -99,7 +96,7 @@ namespace Borepin.PageModel INavigationParameters parameters = new NavigationParameters() { { "result", "abort" }, - { "instance", _Instance } + { "instance", _Instance }, }; await _NavigationService.GoBackAsync(parameters).ConfigureAwait(false); } diff --git a/FabAccessAPI/schema b/FabAccessAPI/schema index 557f37b..aea03aa 160000 --- a/FabAccessAPI/schema +++ b/FabAccessAPI/schema @@ -1 +1 @@ -Subproject commit 557f37b7cf7d7f06f27e8bddb0c45ce1153e2d06 +Subproject commit aea03aabe3d1322892c1896ba757ceeedb92ed73 diff --git a/FabAccessAPI_Test/API_TestEnv_Test.cs b/FabAccessAPI_Test/API_TestEnv_Test.cs index 0dbaa09..50fe060 100644 --- a/FabAccessAPI_Test/API_TestEnv_Test.cs +++ b/FabAccessAPI_Test/API_TestEnv_Test.cs @@ -89,29 +89,15 @@ namespace FabAccessAPI_Test [TestCase("MakerQRA", true)] [TestCase("MakerQRB", true)] [TestCase("MakerQRC", true)] - - [Order(1)] - public async Task AccessMachineSystem(string username, bool expectAllow) + [Order(2)] + public async Task AccessMachineSystem_Info(string username, bool expectAllow) { Connection connection = await API_TestEnv_Test.Connect(username); Session session = connection.Session; - bool result = session.MachineSystem != null; - - API_TestEnv_Test.Disconnect(connection); - - Assert.AreEqual(expectAllow, result); + Assert.AreEqual(expectAllow, !((MachineSystem.InfoInterface_Proxy)session.MachineSystem.Info).IsNull); } - //[TestCase("", true)] - //[Order(2)] - //public async Task AccessMachineSystem_Info(string username, bool expectAllow) - //{ - // Session session = await API_TestEnv_Test.Connect(username); - - // Assert.AreEqual(expectAllow, session.MachineSystem.Info); - //} - [TestCase("Admin1", 15)] [TestCase("ManagerA1", 5)] [TestCase("ManagerB1", 5)] @@ -167,15 +153,15 @@ namespace FabAccessAPI_Test [TestCase("MakerQRA", "MachineA1", true)] [TestCase("MakerQRB", "MachineB1", true)] [TestCase("MakerQRC", "MachineC1", true)] - [Order(4)] public async Task GetMachineByName(string username, string machineName, bool expectedAllow) { Connection connection = await API_TestEnv_Test.Connect(username); Session session = connection.Session; - Machine machine = await session.MachineSystem.Info.GetMachine(machineName).ConfigureAwait(false); - bool result = machine != null; + Optional optional = await session.MachineSystem.Info.GetMachine(machineName).ConfigureAwait(false); + + bool result = optional.Just != null; API_TestEnv_Test.Disconnect(connection); @@ -190,11 +176,11 @@ namespace FabAccessAPI_Test Connection connection = await API_TestEnv_Test.Connect(username); Session session = connection.Session; - Machine machine = await session.MachineSystem.Info.GetMachine(machineName).ConfigureAwait(false); + Optional optional = await session.MachineSystem.Info.GetMachine(machineName).ConfigureAwait(false); API_TestEnv_Test.Disconnect(connection); - Assert.IsNull(machine); + Assert.IsNull(optional.Just); } [TestCase("Admin1", "urn:fabaccess:resource:MachineA1", true)] @@ -228,8 +214,8 @@ namespace FabAccessAPI_Test Connection connection = await API_TestEnv_Test.Connect(username); Session session = connection.Session; - Machine machine = await session.MachineSystem.Info.GetMachine(urn).ConfigureAwait(false); - bool result = machine != null; + Optional optional = await session.MachineSystem.Info.GetMachineURN(urn).ConfigureAwait(false); + bool result = optional.Just != null; API_TestEnv_Test.Disconnect(connection); @@ -245,11 +231,11 @@ namespace FabAccessAPI_Test Connection connection = await API_TestEnv_Test.Connect(username); Session session = connection.Session; - Machine machine = await session.MachineSystem.Info.GetMachine(urn).ConfigureAwait(false); + Optional optional = await session.MachineSystem.Info.GetMachineURN(urn).ConfigureAwait(false); API_TestEnv_Test.Disconnect(connection); - Assert.IsNull(machine); + Assert.IsNull(optional.Just); } } @@ -261,13 +247,7 @@ namespace FabAccessAPI_Test [TestCase("Admin1", "MachineB1", true)] [TestCase("Admin1", "MachineC1", true)] [TestCase("ManagerA1", "MachineA1", true)] - [TestCase("ManagerA1", "MachineB1", false)] - [TestCase("ManagerA1", "MachineC1", false)] - [TestCase("ManagerB1", "MachineA1", false)] [TestCase("ManagerB1", "MachineB1", true)] - [TestCase("ManagerB1", "MachineC1", false)] - [TestCase("ManagerC1", "MachineA1", false)] - [TestCase("ManagerC1", "MachineB1", false)] [TestCase("ManagerC1", "MachineC1", true)] [TestCase("ManagerABC1", "MachineA1", true)] [TestCase("ManagerABC1", "MachineB1", true)] @@ -287,7 +267,7 @@ namespace FabAccessAPI_Test Connection connection = await API_TestEnv_Test.Connect(username); Session session = connection.Session; - Machine machine = await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine = (await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; bool result = !((Machine.InfoInterface_Proxy)machine.Info).IsNull; @@ -300,13 +280,7 @@ namespace FabAccessAPI_Test [TestCase("Admin1", "MachineB1", true)] [TestCase("Admin1", "MachineC1", true)] [TestCase("ManagerA1", "MachineA1", true)] - [TestCase("ManagerA1", "MachineB1", false)] - [TestCase("ManagerA1", "MachineC1", false)] - [TestCase("ManagerB1", "MachineA1", false)] [TestCase("ManagerB1", "MachineB1", true)] - [TestCase("ManagerB1", "MachineC1", false)] - [TestCase("ManagerC1", "MachineA1", false)] - [TestCase("ManagerC1", "MachineB1", false)] [TestCase("ManagerC1", "MachineC1", true)] [TestCase("ManagerABC1", "MachineA1", true)] [TestCase("ManagerABC1", "MachineB1", true)] @@ -326,7 +300,7 @@ namespace FabAccessAPI_Test Connection connection = await API_TestEnv_Test.Connect(username); Session session = connection.Session; - Machine machine = await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine = (await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; bool result = !((ManageInterface_Proxy)machine.Manage).IsNull; @@ -339,13 +313,7 @@ namespace FabAccessAPI_Test [TestCase("Admin1", "MachineB1", true)] [TestCase("Admin1", "MachineC1", true)] [TestCase("ManagerA1", "MachineA1", false)] - [TestCase("ManagerA1", "MachineB1", false)] - [TestCase("ManagerA1", "MachineC1", false)] - [TestCase("ManagerB1", "MachineA1", false)] [TestCase("ManagerB1", "MachineB1", false)] - [TestCase("ManagerB1", "MachineC1", false)] - [TestCase("ManagerC1", "MachineA1", false)] - [TestCase("ManagerC1", "MachineB1", false)] [TestCase("ManagerC1", "MachineC1", false)] [TestCase("ManagerABC1", "MachineA1", false)] [TestCase("ManagerABC1", "MachineB1", false)] @@ -359,13 +327,13 @@ namespace FabAccessAPI_Test [TestCase("MakerQRA", "MachineA1", false)] [TestCase("MakerQRB", "MachineB1", false)] [TestCase("MakerQRC", "MachineC1", false)] - [Order(3)] + [Order(3), Ignore("Not Implemented")] public async Task AdminInterface(string username, string machineID, bool expectInterface) { Connection connection = await API_TestEnv_Test.Connect(username); Session session = connection.Session; - Machine machine = await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine = (await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; bool result = !((AdminInterface_Proxy)machine.Admin).IsNull; @@ -383,7 +351,7 @@ namespace FabAccessAPI_Test Connection connection = await API_TestEnv_Test.Connect(username); Session session = connection.Session; - Machine machine = await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine = (await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; API_TestEnv_Test.Disconnect(connection); @@ -402,42 +370,19 @@ namespace FabAccessAPI_Test public class Machine_Test { #region SetUp - public async Task ForceFree(string username, string machineID) + [SetUp] + public async Task SetUp() { - Console.WriteLine("start: " + machineID); - Connection connection = await API_TestEnv_Test.Connect(username); + Connection connection = await API_TestEnv_Test.Connect("Admin1"); Session session = connection.Session; - Machine machine = await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + IReadOnlyList machine_list = await session.MachineSystem.Info.GetMachineList().ConfigureAwait(false); - await machine.Manage.ForceFree().ConfigureAwait(false); - - API_TestEnv_Test.Disconnect(connection); - - Console.WriteLine("finished: " + machineID); - } - - [OneTimeSetUp] - public async Task OneTimeSetUp() - { - List tasks = new List() + List tasks = new List(); + foreach(Machine m in machine_list) { - ForceFree("Admin1", "MachineA1"), - ForceFree("Admin1", "MachineA2"), - ForceFree("Admin1", "MachineA3"), - ForceFree("Admin1", "MachineA4"), - ForceFree("Admin1", "MachineA5"), - ForceFree("Admin1", "MachineB1"), - ForceFree("Admin1", "MachineB2"), - ForceFree("Admin1", "MachineB3"), - ForceFree("Admin1", "MachineB4"), - ForceFree("Admin1", "MachineB5"), - ForceFree("Admin1", "MachineC1"), - ForceFree("Admin1", "MachineC2"), - ForceFree("Admin1", "MachineC3"), - ForceFree("Admin1", "MachineC4"), - ForceFree("Admin1", "MachineC5") - }; + tasks.Add(m.Manage.ForceFree()); + } await Task.WhenAll(tasks); } @@ -452,7 +397,7 @@ namespace FabAccessAPI_Test Connection connection = await API_TestEnv_Test.Connect(username); Session session = connection.Session; - Machine machine = await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine = (await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; // Check State before run Test if (machine.State != MachineState.free) @@ -463,10 +408,10 @@ namespace FabAccessAPI_Test await machine.Use.Use().ConfigureAwait(false); - machine = await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine = (await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine.Inuse.GiveBack().ConfigureAwait(false); - machine = await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine = (await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; API_TestEnv_Test.Disconnect(connection); @@ -476,7 +421,7 @@ namespace FabAccessAPI_Test [TestCase("ManagerA1", "MakerA1", "MachineA1")] [TestCase("MakerA1", "Admin1", "MachineA1")] [TestCase("ManagerA1", "GuestA1", "MachineA1")] - [Order(2)] + [Order(2), Ignore("Not Implemented")] public async Task TransferMachine(string username1, string username2, string machineID) { Connection connection1 = await API_TestEnv_Test.Connect(username1); @@ -485,7 +430,7 @@ namespace FabAccessAPI_Test Connection connection2 = await API_TestEnv_Test.Connect(username2); Session session2 = connection1.Session; - Machine machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; // Check State before run Test if (machine1.State != MachineState.free) @@ -496,16 +441,16 @@ namespace FabAccessAPI_Test } await machine1.Use.Use().ConfigureAwait(false); - machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine1.Inuse.Releasefortakeover().ConfigureAwait(false); - Machine machine2 = await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine2 = (await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine2.Takeover.Accept().ConfigureAwait(false); - machine2 = await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine2 = (await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine2.Inuse.GiveBack().ConfigureAwait(false); - machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; API_TestEnv_Test.Disconnect(connection1); API_TestEnv_Test.Disconnect(connection2); @@ -516,7 +461,7 @@ namespace FabAccessAPI_Test [TestCase("ManagerA1", "MakerA1", "MachineA1")] [TestCase("MakerA1", "Admin1", "MachineA1")] [TestCase("ManagerA1", "GuestA1", "MachineA1")] - [Order(3)] + [Order(3), Ignore("Not Implemented")] public async Task TransferMachine_Reject(string username1, string username2, string machineID) { Connection connection1 = await API_TestEnv_Test.Connect(username1); @@ -525,7 +470,7 @@ namespace FabAccessAPI_Test Connection connection2 = await API_TestEnv_Test.Connect(username2); Session session2 = connection1.Session; - Machine machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; // Check State before run Test if (machine1.State != MachineState.free) @@ -536,16 +481,16 @@ namespace FabAccessAPI_Test } await machine1.Use.Use().ConfigureAwait(false); - machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine1.Inuse.Releasefortakeover().ConfigureAwait(false); - Machine machine2 = await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine2 = (await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine2.Takeover.Reject().ConfigureAwait(false); - machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine1.Inuse.GiveBack().ConfigureAwait(false); - machine2 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine2 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; API_TestEnv_Test.Disconnect(connection1); API_TestEnv_Test.Disconnect(connection2); @@ -556,7 +501,7 @@ namespace FabAccessAPI_Test [TestCase("ManagerA1", "ManagerA1", "MachineA1")] [TestCase("ManagerA1", "Admin1", "MachineA1")] [TestCase("MakerA1", "Admin1", "MachineA1")] - [Order(4)] + [Order(4), Ignore("Not Implemented")] public async Task CheckMachine(string username1, string username2, string machineID) { Connection connection1 = await API_TestEnv_Test.Connect(username1); @@ -565,7 +510,7 @@ namespace FabAccessAPI_Test Connection connection2 = await API_TestEnv_Test.Connect(username2); Session session2 = connection1.Session; - Machine machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; // Check State before run Test if (machine1.State != MachineState.free) @@ -576,13 +521,13 @@ namespace FabAccessAPI_Test } await machine1.Use.Use().ConfigureAwait(false); - machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine1.Inuse.GiveBack().ConfigureAwait(false); - Machine machine2 = await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine2 = (await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine2.Check.Check().ConfigureAwait(false); - machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; API_TestEnv_Test.Disconnect(connection1); API_TestEnv_Test.Disconnect(connection2); @@ -593,7 +538,7 @@ namespace FabAccessAPI_Test [TestCase("ManagerA1", "ManagerA1", "MachineA1")] [TestCase("ManagerA1", "Admin1", "MachineA1")] [TestCase("MakerA1", "Admin1", "MachineA1")] - [Order(5)] + [Order(5), Ignore("Not Implemented")] public async Task CheckMachine_Reject(string username1, string username2, string machineID) { Connection connection1 = await API_TestEnv_Test.Connect(username1); @@ -603,7 +548,7 @@ namespace FabAccessAPI_Test Session session2 = connection1.Session; - Machine machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; // Check State before run Test if (machine1.State != MachineState.free) @@ -614,19 +559,19 @@ namespace FabAccessAPI_Test } await machine1.Use.Use().ConfigureAwait(false); - machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine1.Inuse.GiveBack().ConfigureAwait(false); - Machine machine2 = await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine2 = (await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine2.Check.Reject().ConfigureAwait(false); - machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine1.Inuse.GiveBack().ConfigureAwait(false); - machine2 = await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine2 = (await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine2.Check.Check().ConfigureAwait(false); - machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; API_TestEnv_Test.Disconnect(connection1); API_TestEnv_Test.Disconnect(connection2); @@ -635,7 +580,7 @@ namespace FabAccessAPI_Test } [TestCase("MakerA1", "GuestA1", "ManagerA1", "MachineA1")] - [Order(4)] + [Order(4), Ignore("Not Implemented")] public async Task CheckMachine_NoPermission(string username1, string username2, string username3, string machineID) { Connection connection1 = await API_TestEnv_Test.Connect(username1); @@ -645,9 +590,9 @@ namespace FabAccessAPI_Test Session session2 = connection1.Session; Connection connection3 = await API_TestEnv_Test.Connect(username3); - Session session3 = connection1.Session; + Session session3 = connection3.Session; - Machine machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; // Check State before run Test if (machine1.State != MachineState.free) @@ -658,13 +603,13 @@ namespace FabAccessAPI_Test } await machine1.Use.Use().ConfigureAwait(false); - machine1 = await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + machine1 = (await session1.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine1.Inuse.GiveBack().ConfigureAwait(false); - Machine machine2 = await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine2 = (await session2.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; bool result = ((CheckInterface_Proxy)machine2.Check).IsNull; - Machine machine3 = await session3.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false); + Machine machine3 = (await session3.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; await machine3.Check.Check().ConfigureAwait(false); API_TestEnv_Test.Disconnect(connection1); @@ -672,6 +617,29 @@ namespace FabAccessAPI_Test Assert.IsTrue(result); } + + [TestCase("ManagerA1", "MachineA1")] + [Order(5)] + public async Task CurrentUser(string username, string machineID) + { + Connection connection = await API_TestEnv_Test.Connect(username); + Session session = connection.Session; + + Machine machine = (await session.MachineSystem.Info.GetMachine(machineID).ConfigureAwait(false)).Just; + + // Check State before run Test + if (machine.State != MachineState.free) + { + API_TestEnv_Test.Disconnect(connection); + Assert.Inconclusive("State is not 'free'"); + } + + MachineInfoExtended machineInfoExtended = await machine.Manage.GetMachineInfoExtended().ConfigureAwait(false); + + API_TestEnv_Test.Disconnect(connection); + + Assert.IsNull(machineInfoExtended.CurrentUser.Just); + } } [TestFixture, Parallelizable(ParallelScope.Children)] @@ -718,7 +686,7 @@ namespace FabAccessAPI_Test [TestCase("ManagerA1", 13)] [TestCase("MakerA1", 13)] [TestCase("GuestA1", 13)] - [Order(3)] + [Order(3), Ignore("Not Implemented")] public async Task ListRoles(string username, int expectRolesCount) { Connection connection = await API_TestEnv_Test.Connect(username); @@ -736,24 +704,6 @@ namespace FabAccessAPI_Test [Order(5)] public class UserSystem_Test { - [TestCase("Admin1", true)] - [TestCase("ManagerA1", true)] - [TestCase("MakerA1", true)] - [TestCase("GuestA1", true)] - [Order(1)] - public async Task AccessUserSystem(string username, bool expectInterface) - { - Connection connection = await API_TestEnv_Test.Connect(username); - Session session = connection.Session; - - bool result = session.UserSystem != null; - - API_TestEnv_Test.Disconnect(connection); - - Assert.AreEqual(expectInterface, result); - } - - //[TestCase("Admin1", true)] //[TestCase("ManagerA1", true)] //[TestCase("MakerA1", true)] @@ -837,7 +787,7 @@ namespace FabAccessAPI_Test [TestCase("ManagerA1", true)] [TestCase("MakerA1", true)] [TestCase("GuestA1", true)] - [Order(2)] + [Order(2), Ignore("Not Implemented")] public async Task ManageInterface(string username, bool expectInterface) { Connection connection = await API_TestEnv_Test.Connect(username); @@ -856,7 +806,7 @@ namespace FabAccessAPI_Test [TestCase("ManagerA1", false)] [TestCase("MakerA1", false)] [TestCase("GuestA1", false)] - [Order(3)] + [Order(3), Ignore("Not Implemented")] public async Task AdminInterface(string username, bool expectInterface) { Connection connection = await API_TestEnv_Test.Connect(username); @@ -895,7 +845,7 @@ namespace FabAccessAPI_Test [TestCase("ManagerA1")] [TestCase("MakerA1")] [TestCase("GuestA1")] - [Order(5)] + [Order(5), Ignore("Not Implemented")] public async Task ListUserRoles(string username, params string[] expect_roles) { Connection connection = await API_TestEnv_Test.Connect(username); @@ -915,7 +865,7 @@ namespace FabAccessAPI_Test foreach (Role role_user in roles_user) { - if(!expect_roles_list.Exists(x => x == role_user.Name)) + if (!expect_roles_list.Exists(x => x == role_user.Name)) { Assert.Fail("Roles are different"); } @@ -927,6 +877,6 @@ namespace FabAccessAPI_Test [Order(7)] public class User_Test { - + } } \ No newline at end of file