public void Should_be_possible_to_evaluate_variable_for_path_entity_when_filename_is_nil() { var sourceObject = ProbeHelper.GetOvalComponentByOvalID(this.Definitions, ConstantHelper.OBJECT_ID_1071); var pathVariableID = this.GetVariableReferenceID(sourceObject.id, ConstantHelper.PathEntityName); var pathVariableValue = this.GetVariableValue(pathVariableID); var variablesAndValues = new Dictionary<String, IEnumerable<String>>(); variablesAndValues.Add(pathVariableID, new string[] { pathVariableValue }); var evaluatedVariables = VariableHelper.CreateEvaluatedVariables(sourceObject.id, variablesAndValues); var variableEvaluator = new FileEffectiveRights53EntityVariableEvaluator(evaluatedVariables); var evaluationResult = variableEvaluator.ProcessVariables(sourceObject); Assert.IsNotNull(evaluationResult); Assert.AreEqual(1, evaluationResult.Count()); var entities = evaluationResult.Single().GetEntityBaseTypes(); Assert.AreEqual(3, entities.Count()); var pathEntity = entities.ElementAt(0); Assert.IsNotNull(pathEntity); Assert.AreEqual(GetVariableValue(GetVariableReferenceID(sourceObject.id, "path")), pathEntity.Value); var filenameEntity = entities.ElementAt(1); Assert.IsNotNull(filenameEntity); Assert.AreEqual(string.Empty, filenameEntity.Value); var trusteeSidEntity = entities.ElementAt(2); Assert.IsNotNull(trusteeSidEntity); Assert.AreEqual("S-1-15-500", trusteeSidEntity.Value); }
public void Should_be_possible_to_evaluate_variable_for_all_entities_at_same_time() { var sourceObject = ProbeHelper.GetOvalComponentByOvalID(this.Definitions, ConstantHelper.OBJECT_ID_1050); var variablesAndValues = this.CreateVariableAndValuesDictionary(sourceObject.id); var evaluatedVariables = VariableHelper.CreateEvaluatedVariables(sourceObject.id, variablesAndValues); var variableEvaluator = new FileEffectiveRights53EntityVariableEvaluator(evaluatedVariables); var evaluationResult = variableEvaluator.ProcessVariables(sourceObject); DoBasicAssertForVariableProcessing(evaluationResult, 1, typeof(fileeffectiverights53_object)); var pathVariableValue = this.GetVariableValue(variablesAndValues.ElementAt(0).Key); AssertObjectEntity(evaluationResult.First(), ConstantHelper.PathEntityName, pathVariableValue); var filenameVariableValue = this.GetVariableValue(variablesAndValues.ElementAt(1).Key); AssertObjectEntity(evaluationResult.First(), ConstantHelper.FilenameEntityName, filenameVariableValue); var trusteeSIDVariableValue = this.GetVariableValue(variablesAndValues.ElementAt(2).Key); AssertObjectEntity(evaluationResult.First(), ConstantHelper.TrusteeSIDEntityName, trusteeSIDVariableValue); AssertCorrectnessOfFileEntities((fileeffectiverights53_object)evaluationResult.First()); }