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

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

            Assert.IsNotNull(returnedElement, "returned class element is null!");
            Assert.True(element.AccessLevel == returnedElement.AccessLevel, "AccessLevel 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.Namespace == returnedElement.Namespace, "Namespace is different!");
            Assert.True(element.ProgramElementType == returnedElement.ProgramElementType, "ProgramElementType is different!");
            Assert.True(element.RawSource == returnedElement.RawSource, "Snippet is different!");
            Assert.True("not stored in index" == returnedElement.Body, "Body is different");
        }