public async Task ReturnOKOnUnLockHandlerPosition()
        {
            // Arrange + Act
            var response = await HandlerApi.UnlockHandlerPosition();

            //Assert
            Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK), "response.StatusCode, Is.EqualTo(HttpStatusCode.OK)");
        }
        public async Task ReturnPositionIdNullOnLockHandlerPosition()
        {
            // Arrange + Act
            var response = await HandlerApi.LockHandlerPosition();

            //Assert
            Assert.That(response.Content.position.PositionId, Is.Not.Null);
        }
        public async Task ReturnPositionOnSave()
        {
            // Arrange + Act
            var response = await HandlerApi.SaveHandlerPosition();

            //Assert
            Assert.That(response.Content.position, Is.Not.Null, $"the {response.Content.position} should not be null");
        }
        public async Task ReturnOKOnLockHandlerPosition()
        {
            // Arrange + Act
            var response = await HandlerApi.LockHandlerPosition();

            //Assert
            Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK), "response.StatusCode, Is.EqualTo(HttpStatusCode.OK");
            Assert.That(response.Content.Status, Is.EqualTo(CommandStatus.Ack), "response.Content.Status, Is.EqualTo(CommandStatus.Ack)");
        }
        public async Task ReturnOKOnSaveHandlerPosition()
        {
            // Arrange + Act
            var response = await HandlerApi.SaveHandlerPosition();

            //Assert
            Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK));
            Assert.That(response.Content.Type, Is.EqualTo("Save"));
        }
        public async Task ReturnPositionZeroOnLockHandlerPosition()
        {
            // Arrange + Act
            var response = await HandlerApi.LockHandlerPosition();

            //Assert
            Assert.That(response.Content.position.X, Is.EqualTo(0), "X, Is.EqualTo(0)");
            Assert.That(response.Content.position.Y, Is.EqualTo(0), "Y, Is.EqualTo(0)");
            Assert.That(response.Content.position.Z, Is.EqualTo(0), "Z, Is.EqualTo(0)");
        }
        public async Task ReturnAckOnSetHandlerPosition()
        {
            //Arrange
            var(X, Y, Z) = (10, 20, 30);

            //Act
            var response = await HandlerApi.SetHandlerPosition(X, Y, Z);

            //Assert
            response.Content.Status.Should().Equals(CommandStatus.Ack);
        }
        public async Task ReturnOkOnSetHandlerPosition()
        {
            //Arrange
            var(X, Y, Z) = (10, 20, 30);

            //Act
            var response = await HandlerApi.SetHandlerPosition(X, Y, Z);

            //Assert
            Assert.That(response.StatusCode, Is.EqualTo(HttpStatusCode.OK), "response.StatusCode should be EqualTo HttpStatusCode.OK");
        }
        public async Task ReturnPositionOnSetHandlerPosition(int x, int y, int z)
        {
            //Arange
            var(X, Y, Z) = (x, y, z);

            //Act
            var response = await HandlerApi.SetHandlerPosition(X, Y, Z);

            //Assert
            Assert.AreEqual("Move", response.Content?.Type, "Type should be Move");
            Assert.AreEqual(X, response.Content?.position.X);
            Assert.AreEqual(Y, response.Content?.position.Y);
            Assert.AreEqual(Z, response.Content?.position.Z);
        }
        public async Task ReturnCurrentPositionOnGetHandlerPosition()
        {
            //Arrange
            //Set handler position (Note: The Api generate Random 'current'
            //position and save it to memory)

            var response = await HandlerApi.SaveHandlerPosition();

            var(X, Y, Z) =
                (response.Content.position.X,
                 response.Content.position.Y,
                 response.Content.position.Z);

            //Act
            response = await HandlerApi.GetCurrentHandlerPosition();

            //Assert
            Assert.AreEqual(X, response.Content?.position.X);
            Assert.AreEqual(Y, response.Content?.position.Y);
            Assert.AreEqual(Z, response.Content?.position.Z);
        }