public void IsViolated_ViolatingContext_ChangesProblemMetadatasGivenType()
        {
            var expectedFragment = Fragment.CreateNamed( "expectedFragment");
              var unexpectedFragment = Fragment.CreateNamed( "unexpectedFragment");
              ProblemMetadata problemMetaData = new ProblemMetadata(0, new SourceContext(), expectedFragment, Fragment.CreateNamed( "dummy"));
              IBlacklistManager blackListManager = _mocks.Stub<IBlacklistManager>();
              EqualityPreCondition preCondition = new EqualityPreCondition("testSymbol", expectedFragment, problemMetaData);
              SymbolTable context = new SymbolTable(blackListManager);
              context.MakeSafe("testSymbol", unexpectedFragment);

              preCondition.IsViolated(context);

              Assert.That(problemMetaData.GivenFragment, Is.EqualTo(unexpectedFragment));
        }
        private void SetPreConditionForIndexerObject(
        AssignmentStatement assignmentStatement, string targetName, Fragment sourceFragmentType, HandleContext context)
        {
            if (targetName != null)
              {
            ProblemMetadata problemMetadata = new ProblemMetadata (
            assignmentStatement.UniqueKey,
            assignmentStatement.SourceContext,
            sourceFragmentType,
            Fragment.CreateNamed ("??"));

            var preCondition = new EqualityPreCondition (targetName, sourceFragmentType, problemMetadata);
            context.PreConditions.Add (preCondition);
              }
        }