A markup document writer records structured text as a hierarchically structured document.

Namespace:  Gallio.Common.Markup
Assembly:  Gallio (in Gallio.dll) Version: 3.3.0.0 (3.3.610.0)

Syntax

C#
[SerializableAttribute]
public abstract class MarkupDocumentWriter : MarshalByRefObject
Visual Basic (Declaration)
<SerializableAttribute> _
Public MustInherit Class MarkupDocumentWriter _
	Inherits MarshalByRefObject

Remarks

Markup documents are especially used to record the output of a test run including text that was written to console output streams, exceptions that occurred, and anything else the test writer might want to save.

A markup document consists of zero or more markup streams that are opened automatically on demand to capture independent sequences of log output. Each stream can further be broken down into possibly nested sections to classify output during different phases of test execution (useful for drilling into complex tests). In addition to text, a markup document can contain attachments that are either attached at the top level of the markup document or embedded into markup streams. Attachments are typed by mime-type and can contain Text, Xml, Images, Blobs, or any other content. Certain test frameworks may automatically create attachments to gather all manner of diagnostic information over the course of the test.

All operations on this interface are thread-safe.

Subclasses may assume that the following validation steps have been performed before the implementation methods are called:

  • Checking arguments for null and invalid values
  • Ensuring that the writer has not been closed
  • Ensuring that no attachment with the same name exists when adding an attachment
  • Ensuring that there is an attachment with the specified name exists when embedding an attachment
  • Ensuring that the nesting level of sections and markers is correct and balanced when End is called

The object extends MarshalByRefObject so instances may be accessed by remote clients if required.

Inheritance Hierarchy

See Also