[#BloombergLP-ball-TestObserver-2constructor-02]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/ball.adoc[ball]::xref:BloombergLP/ball/TestObserver.adoc[TestObserver]::TestObserver
:relfileprefix: ../../../
:mrdocs:

Create a test observer writing to the specified `stream`&period;

== Synopses

Declared in `&lt;ball&lowbar;testobserver&period;h&gt;`

Create a test observer writing to the specified `stream`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/ball/TestObserver/2constructor-01.adoc[TestObserver](
    std::ostream& stream,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/ball/TestObserver/2constructor-01.adoc[_» more&period;&period;&period;_]#

Create a test observer writing to the specified `stream`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/ball/TestObserver/2constructor-04.adoc[TestObserver](
    std::ostream* stream,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/ball/TestObserver/2constructor-04.adoc[_» more&period;&period;&period;_]#

== Parameters

[cols="1,4"]
|===
| Name| Description
| *stream*
| destination for diagnostic output from `publish`
| *basicAllocator*
| memory allocator&semi; null uses the default
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
