public void Include_True_Is_Visible_True()
        {
            // arrange
            var variableValues = new Mock <IVariableValueCollection>();
            var visibility     = new SelectionIncludeCondition(include: new BooleanValueNode(true));

            // act
            var visible = visibility.IsTrue(variableValues.Object);

            // assert
            Assert.True(visible);
        }
        public void Include_Var_True_Is_Visible_True()
        {
            // arrange
            var variableValues = new Mock <IVariableValueCollection>();

            variableValues.Setup(t => t.GetVariable <bool>("b")).Returns(true);
            var visibility = new SelectionIncludeCondition(include: new VariableNode("b"));

            // act
            var visible = visibility.IsTrue(variableValues.Object);

            // assert
            Assert.True(visible);
        }
        public void Parent_Visible_False()
        {
            // arrange
            var variableValues = new Mock <IVariableValueCollection>();

            var parent = new SelectionIncludeCondition(
                include: new BooleanValueNode(false));

            var visibility = new SelectionIncludeCondition(
                include: new BooleanValueNode(true),
                parent: parent);

            // act
            var visible = visibility.IsTrue(variableValues.Object);

            // assert
            Assert.False(visible);
        }