public void DocumentFactory_CreateReturnsPropertyDocumentForValidPropertyElement()
 {
     try
     {
         ProgramElement programElement = SampleProgramElementFactory.GetSamplePropertyElement();
         SandoDocument  sandoDocument  = DocumentFactory.Create(programElement);
         Assert.True(sandoDocument != null, "Null returned from DocumentFactory!");
         Assert.True(sandoDocument is PropertyDocument, "PropertyDocument must be returned for PropertyElement object!");
     }
     catch (Exception ex)
     {
         Assert.Fail(ex.Message + ". " + ex.StackTrace);
     }
 }
        public void ProgramElementReader_ReadProgramElementFromDocumentReturnValidPropertyElementForValidDocument()
        {
            PropertyElement element  = SampleProgramElementFactory.GetSamplePropertyElement();
            Document        document = DocumentFactory.Create(element).GetDocument();

            PropertyElement returnedElement = ConverterFromHitToProgramElement.Create(document).Convert() as PropertyElement;

            Assert.IsNotNull(returnedElement, "returned class element is null!");
            Assert.True(element.AccessLevel == returnedElement.AccessLevel, "AccessLevel is different!");
            Assert.True("not stored in index" == returnedElement.Body, "Body is different!");
            Assert.True(element.ClassId == returnedElement.ClassId, "ClassId is different!");
            Assert.True(element.ClassName == returnedElement.ClassName, "ClassName is different!");
            Assert.True(element.DefinitionLineNumber == returnedElement.DefinitionLineNumber, "DefinitionLineNumber is different!");
            Assert.True(StandardizeFilePath(element.FullFilePath) == returnedElement.FullFilePath, "FullFilePath is different!");
            Assert.True(element.Name == returnedElement.Name, "Name is different!");
            Assert.True(element.ProgramElementType == returnedElement.ProgramElementType, "ProgramElementType is different!");
            Assert.True(element.PropertyType == returnedElement.PropertyType, "PropertyType is different!");
            Assert.True(element.RawSource == returnedElement.RawSource, "Snippet is different!");
        }