Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

unittest.d File Reference

Go to the source code of this file.

Classes

class  VersionArrayReaderSupport
class  VersionMango

Functions

void testBuffer ()
void testAppend ()
void testToken1 ()
void testToken2 ()
void testToken3 ()
void testFormat ()
void testLayout ()
void testClassIO ()
void testClassSerialization ()
void testFile4 ()
void testRandomAccess ()
void testConduitFilters ()
void testFile5 ()
void testFile1 ()
void testFile2 ()
void testFile3 ()
void testScanFiles ()
void testSocket ()
void testColumn ()
void testStdin ()
void wordRegex (IBuffer buffer)
void testFileRegex ()
void testSocketRegex ()
void testLineRegex ()
void testFileSize ()
void testFileList ()
void testFilePath ()
void testMappedFile ()
void testCompositeIO ()
void testDirectIO ()
void testUri ()
void testClient ()
void testServer (IProvider provider)
void testHttpServer ()
void testServletEngine ()
void testHttpClient ()
void testHttpClient2 ()
void testHttpClient3 ()
void testPlainCache ()
void testQueuedCache ()
void testFileBucket ()
void testVirtualCache ()
void testProtocol ()
void testHashMap ()
void testMulticast ()
void testClusterCache ()
void testClusterQueue ()
void testInvalidatee ()
void testClusterServer ()
void testClusterMessage ()
void testCacheLoader ()
void testRemoteCacheLoader ()
void testDisplay ()
void testTextWriter ()
int main (char[][] args)

Variables

import mango io Uri
import mango io mango io Stdio
import mango io mango io mango
io 
Token
import mango io mango io mango
io mango io 
Reader
import mango io mango io mango
io mango io mango io 
Writer
import mango io mango io mango
io mango io mango io mango
io 
Buffer
import mango io mango io mango
io mango io mango io mango
io mango io 
Socket
import mango io mango io mango
io mango io mango io mango
io mango io mango io 
Conduit
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io 
FilePath
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io 
FileStyle
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io 
FileProxy
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io 
Tokenizer
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io 
TextReader
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io 
TextWriter
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io 
FileBucket
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io 
FileConduit
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io 
TextLayout
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io 
TextFormat
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io 
ColumnWriter
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io 
DisplayWriter
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io 
PickleReader
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io 
PickleWriter
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io 
SocketConduit
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io 
SocketListener
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io 
ArrayAllocator
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io 
PickleRegistry
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io 
DatagramSocket
import mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io mango io mango
io mango io 
MulticastSocket
import mango log Logger
import mango log mango log Layout
import mango log mango log
mango log 
Manager
import mango log mango log
mango log mango log 
DateLayout
import mango log mango log
mango log mango log mango
log 
Configurator
import mango log mango log
mango log mango log mango
log mango log 
FileAppender
import mango log mango log
mango log mango log mango
log mango log mango log 
StdioAppender
import mango log mango log
mango log mango log mango
log mango log mango log mango
log 
ConsoleAppender
import mango log mango log
mango log mango log mango
log mango log mango log mango
log mango log 
RollingFileAppender
import mango io model IReader
import mango io model mango
io model 
IWriter
import mango io model mango
io model mango io model 
IPickle
import mango http server HttpParams
import mango http server mango
http server 
HttpCookies
import mango http server mango
http server mango http server 
HttpHeaders
import mango http server mango
http server mango http server
mango http server 
HttpServer
import mango http server mango
http server mango http server
mango http server mango http
server 
HttpRequest
import mango http server mango
http server mango http server
mango http server mango http
server mango http server 
HttpResponse
import mango http server mango
http server mango http server
mango http server mango http
server mango http server mango
http server 
HttpProvider
import mango http server model IProvider
import mango http server model
mango http server model 
IProviderBridge
import mango http client HttpClient
import mango servlet Servlet
import mango servlet mango
servlet 
ServletConfig
import mango servlet mango
servlet mango servlet 
ServletContext
import mango servlet mango
servlet mango servlet mango
servlet 
ServletProvider
import mango cache PlainCache
import mango cache mango cache HashMap
import mango cache mango cache
mango cache 
Payload
import mango cache mango cache
mango cache mango cache 
QueuedCache
import mango cache mango cache
mango cache mango cache mango
cache 
VirtualCache
import mango cluster Message
import mango cluster mango
cluster 
NetworkQueue
import mango cluster mango
cluster mango cluster 
NetworkCache
import mango cluster mango
cluster mango cluster mango
cluster 
CacheInvalidator
import mango cluster mango
cluster mango cluster mango
cluster mango cluster 
CacheInvalidatee
import mango cluster qos socket Cluster
import mango cluster qos socket
mango cluster qos socket 
ClusterServer
import mango cluster qos socket
mango cluster qos socket mango
cluster qos socket 
ProtocolReader
import mango cluster qos socket
mango cluster qos socket mango
cluster qos socket mango cluster
qos socket 
ProtocolWriter
Logger logger
import std regexp


Detailed Description

Test jig for the mango.io package.

This shows a number of different ways to manipulate buffers, readers, writers, and how to perform IO on files and sockets.

The basic premise behind this IO package is as follows:

1) the central concept is that of a buffer. The buffer acts as a queue (line) where items are removed from the front and new items are added to the back. Buffers are modeled by mango.io.model.IBuffer, and a concrete implementation is provided via mango.io.Buffer.

2) buffers can be written to directly, but a Reader and/or Writer are typically used to read & write formatted data. These readers & writers are bound to a specific buffer; often the same buffer. It's also perfectly legitimate to bind multiple writers to the same buffer; they will all behave serially as one would expect. The same applies to multiple readers on the same buffer. Readers and writers support two styles of IO: put/get, and the C++ style << and >> operators. All such operations can be chained.

3) Any class can be made compatable with the reader/writer framework by implementing the IReadable and/or IWritable interfaces. Each of these specify just a single method.

4) Buffers may also be tokenized. This is handy when one is dealing with text input, and/or the content suits a more fluid format than most typical readers & writers support. Tokens are mapped directly onto buffer content, so there is only minor overhead in using them. Tokens can be read and written by reader/writers also, using a more relaxed set of rules than those applied to integral IO.

5) buffers are sometimes memory-only, in which case there is nothing left to do when a reader (or tokenizer) hits end of buffer conditions. Other buffers are themselves bound to a Conduit. When this is the case, a reader will eventually cause the buffer to reload via its associated conduit. Previous buffer content will thus be lost. The same concept is applied to writers, whereby they flush the content of a full buffer to a bound conduit before continuing.

6) conduits provide virtualized access to external content, and represent things like files or Internet connections. They are just a different kind of stream. Conduits are modelled by mango.io.model.IConduit, and implemented via classes FileConduit and SocketConduit. Additional kinds of conduit are easy to construct: one either subclasses mango.io.Conduit, or implements mango.io.model.IConduit. The conduit reads and writes a buffer in large segments; typically the entire buffer.

7) additional file-system support is provided through two classes: FileSystem supports operations such as getting and setting the current directory, and FileProxy exposes facilities to manipulate both files and directories.

8) console IO is implemented via Stdio, using FileConduit and appropriate readers and writers. Console IO can be redirected in the traditional (shell) manner.

9) the package is intended to be portable between linux and Win32 platforms.

Kris Bell, March 26th 2004

Definition in file unittest.d.


Function Documentation

void testBuffer  )  [static]
 

Simple test of in-memory buffer. Bind both a Reader and a Writer onto the same buffer.

Definition at line 298 of file unittest.d.

References Buffer, Buffer::clear(), IReader::get(), AbstractReader::get(), IWriter::put(), AbstractWriter::put(), Reader, and Writer.

void testAppend  )  [static]
 

Append to a buffer directly without using a Writer. This can be useful for appending a set of strings (or other array type) to a contiguous space in a similar fashion to std.outbuffer.

Definition at line 345 of file unittest.d.

References IBuffer::append(), Buffer::append(), Buffer, and Buffer::toString().

void testToken1  )  [static]
 

write delimited text tokens to a buffer, then read them back out to the console

Definition at line 367 of file unittest.d.

References Buffer, BoundToken::next(), IWriter::put(), and TextWriter.

void testToken2  )  [static]
 

Use tokens directly with reader/writer also

Definition at line 393 of file unittest.d.

References Buffer, Reader, and TextWriter.

void testToken3  )  [static]
 

use TextReader to convert text into integral types. This is akin to what scanf does.

Definition at line 426 of file unittest.d.

References Buffer, TextReader, and TextWriter.

void testFormat  )  [static]
 

Use printf via a wrapper class

Definition at line 488 of file unittest.d.

References TextFormat::format(), and TextFormat.

void testLayout  )  [static]
 

Layout text strings in an indexed fashion

Definition at line 504 of file unittest.d.

References TextLayout.

void testClassIO  )  [static]
 

Use interfaces to make any class reader and/or writer compatible

Definition at line 520 of file unittest.d.

References Buffer, IReader::get(), IReadable::read(), Reader, IWritable::write(), and Writer.

void testClassSerialization  )  [static]
 

Use interfaces to make any class serializable. This will be used by mango.server to move class-instances around the network. Each class is effectively a factory for itself.

Note that this is not the same as Java; you can't ship code with the data ... one might perhaps use dll's or something to do that.

Definition at line 570 of file unittest.d.

References Buffer, IPickleFactory::create(), PickleWriter::freeze(), IReader::get(), IPickle::getGuid(), PickleReader, PickleWriter, IWriter::put(), IReadable::read(), and IWritable::write().

void testFile4  )  [static]
 

open a file, and stream directly to console

Definition at line 638 of file unittest.d.

References FileConduit.

void testRandomAccess  )  [static]
 

Create a file for random access. Write some stuff to it, rewind to file start and read back.

Definition at line 655 of file unittest.d.

References FileConduit, AbstractWriter::flush(), IReader::get(), AbstractReader::get(), IWriter::put(), AbstractWriter::put(), Reader, FileConduit::seek(), and Writer.

void testConduitFilters  )  [static]
 

Create a file for random access. Write some stuff to it, rewind to file start and read back.

Definition at line 690 of file unittest.d.

References Conduit::attach(), FileConduit, IWriter::flush(), AbstractReader::get(), AbstractWriter::put(), Reader, ConduitSource::reader(), FileConduit::seek(), Writer, and ConduitSink::writer().

void testFile5  )  [static]
 

open a file, and explicitly buffer it to another conduit. This is effectively what Conduit.copyTo() does.

Definition at line 740 of file unittest.d.

References FileConduit::createBuffer(), FileConduit, and Conduit::read().

void testFile1  )  [static]
 

Open a file and read it line-by-line using a line tokenizer. This uses CompositeToken to hide some of the details.

Definition at line 765 of file unittest.d.

References FileConduit, and CompositeToken::get().

void testFile2  )  [static]
 

Unwound version of above: we now explicitly pass a buffer instance to the tokenizer, although the token itself is still bound.

Definition at line 787 of file unittest.d.

References FileConduit::createBuffer(), FileConduit, Token::getLength(), and BoundToken::next().

void testFile3  )  [static]
 

Further unwinding of above: we invoke the tokenizer directly, explicitly passing both the buffer and the token

Definition at line 812 of file unittest.d.

References FileConduit::createBuffer(), FileConduit, Token::getLength(), and Token.

void testScanFiles  ) 
 

Recursively scan files and directories, adding filtered files to an output structure as we go. Thanks to Chris S for this.

delegate for filtering sub-directories and D source files

Definition at line 837 of file unittest.d.

References FilePath, FileProxy, FilePath::getExtension(), FilePath::getName(), FileProxy::getPath(), and FileProxy::toList().

void testSocket  )  [static]
 

Open an internet connection, and copy home page to console (via Chris Miller's socket.d). We could use a line-by-line approach in the same manner as above since both Files & Sockets are conduits. All conduits are interchangable with others.

Definition at line 925 of file unittest.d.

References Socket::connect(), DisplayWriter, SocketConduit::setTimeout(), and SocketConduit.

void testColumn  )  [static]
 

Use a ColumnWriter to write formatted data onto the console. Note that we map the ColumnWriter directly into the Stdout buffer.

Definition at line 954 of file unittest.d.

References ColumnWriter, ColumnWriter::put, and DisplayWriter::setPrecision().

void testStdin  )  [static]
 

Get a line of input from the console, and extract an integer. Input from the console always waits until CR is pressed (at the OS level).

Definition at line 979 of file unittest.d.

void wordRegex IBuffer  buffer  )  [static]
 

Use RegExp to scan words via a buffer.

Definition at line 999 of file unittest.d.

References CompositeToken::next().

Referenced by testFileRegex(), testLineRegex(), and testSocketRegex().

void testFileRegex  )  [static]
 

Use RegExp to scan file content via a buffer. Buffered scanning avoids loading the entire file into memory at one time.

Definition at line 1022 of file unittest.d.

References FileConduit::createBuffer(), FileConduit, and wordRegex().

void testSocketRegex  )  [static]
 

open an internet connection and scan home-page for words.

Definition at line 1038 of file unittest.d.

References Socket::connect(), SocketConduit::createBuffer(), DisplayWriter, SocketConduit::setTimeout(), SocketConduit, and wordRegex().

void testLineRegex  )  [static]
 

Read lines from a file, and scan each line for words. This shows how to map the content of one buffer into another without copying any data. Unlikely to be a common activity.

Definition at line 1068 of file unittest.d.

References FileConduit, CompositeToken::get(), Buffer::setValidContent(), and wordRegex().

void testFileSize  )  [static]
 

Display the size of a file

Definition at line 1102 of file unittest.d.

References FileProxy, and FileProxy::getPath().

void testFileList  )  [static]
 

list a set of files

Definition at line 1120 of file unittest.d.

References FileProxy, and FileProxy::toList().

void testFilePath  )  [static]
 

list a set of files

Definition at line 1134 of file unittest.d.

References FilePath, Uri::getHost(), Uri::getPath(), Uri::getPort(), Uri::getScheme(), Uri::toString(), FilePath::toUri(), and Uri.

void testMappedFile  ) 
 

Construct a memory-mapped buffer upon a 200MB file. Note that we should close both the conduit and buffer when finished.

Note also that Win32 takes a while to close the initial file if it has just been created or resized. Subsequently opening the file as ReadWriteExising performs admirably. I imagine it's to do with spooling a gazillion dirty pages to the drive?

Definition at line 1172 of file unittest.d.

References Buffer::append(), MappedBuffer::close(), FileConduit, FileConduit::seek(), and MappedBuffer::setPosition().

void testCompositeIO  )  [static]
 

Use Composite IO to read and write a data-set. See CompositeReader and CompositeWriter for more on this.

Definition at line 1194 of file unittest.d.

References FileConduit, IWriter::flush(), IReader::get(), IWriter::put(), IReadable::read(), Reader, FileConduit::seek(), IWritable::write(), and Writer.

void testDirectIO  )  [static]
 

One can perform direct IO on a conduit, simply by mapping a Buffer onto a local array. No additional buffering takes place but readers, writers, and tokenizers can't tell the difference: they may all be used without issue.

This example uses the same direct-buffer for both reading & writing. However, seperate buffers may be used as appropriate.

Definition at line 1251 of file unittest.d.

References Buffer, IBuffer::clear(), FileConduit, Conduit::read(), FileConduit::seek(), IBuffer::setConduit(), and Conduit::write().

void testUri  )  [static]
 

Definition at line 1292 of file unittest.d.

References MutableUri::parse().

void testClient  ) 
 

Test the http server by sending it a few thousand requests. Note that we don't use a reader or a writer here, though we could just as easily have done so.

Also note that (Gentoo) linux has a hard time scavenging sockets fast enough to complete more than around 6000 iterations. Without the appropriate guru incantations to make ulimit work as desired, we just limit the iterations to a more agreeable level. Testing under Win32 seems to be fine at the 100,000 iteration mark.

Definition at line 1329 of file unittest.d.

References Buffer::append(), Buffer, Buffer::clear(), IResource::close(), Socket::connect(), SocketConduit::read(), Socket::setLingerPeriod(), Socket::shutdown(), SocketConduit, and SocketConduit::write().

Referenced by testServer().

void testServer IProvider  provider  ) 
 

Create an http server with the given IProvider

Definition at line 1389 of file unittest.d.

References HttpServer, AbstractServer::start(), testClient(), and time.

Referenced by testHttpServer(), and testServletEngine().

void testHttpServer  ) 
 

Declare a class for handling http requests. This one just simply returns a status page

Definition at line 1418 of file unittest.d.

References HttpResponse::sendError(), HttpProvider::service(), and testServer().

void testServletEngine  ) 
 

Test the servlet wrapper. Point your Browser at http://127.0.0.1 and optionally add a path, query params, etc ...

Return a file. Deliberately supports GET requests only.

A whole bunch of diagnostic stuff, plus cookie return and rudimentary form processing.

Definition at line 1440 of file unittest.d.

References HttpMutableCookies::add(), ServletProvider::addMapping(), ServletProvider::addServlet(), IServletResponse::copyFile(), IWriter::cr(), MethodServlet::doGet(), IServletRequest::getCharacterEncoding(), IServletRequest::getContentLength(), IServletRequest::getContentType(), IServletRequest::getContext(), IServletRequest::getContextPath(), IServletResponse::getCookies(), IServletRequest::getCookies(), IServletRequest::getHeaders(), IServletRequest::getMethod(), IServletRequest::getParameters(), Uri::getPath(), IServletRequest::getPathInfo(), HttpReader::getPostData(), IServletRequest::getProtocol(), Uri::getQuery(), IServletRequest::getReader(), Uri::getScheme(), IServletRequest::getServerName(), IServletRequest::getServerPort(), IServletRequest::getUri(), IServletResponse::getWriter(), IWriter::put(), Servlet::service(), ServletProvider, and testServer().

void testHttpClient  ) 
 

Shows a variety of ways in which to access data returned from a client-side socket connection.

Bulk copy from input to Stdout

Unwound version of the above, where we explicitly move data between endpoints using a buffer

Read input a line at a time from the input. You can access the line content via method Token.toString()

Read input a char at a time. This will read in big chunks of data from the input, but spit them out one character at a time. While this is a lot faster then reading one char at a time from the OS (the typical approach), this style of reading is not recommended. Instead, try the 'chunked' approach (below).

Read big chunks of data, and process them as such. Each read operation will eat as much as there is from the input, up to the size limit of the buffer.

unwound version of the above, where we setup buffer space on the stack (instead of the heap). We need to explicitly ask the buffer how much data is actually available. One could use the return value from read() as the number of bytes available instead (in this particular case), or use buffer.toString() as in the above case

Open a web-site connection, and process the returned page

Definition at line 1577 of file unittest.d.

References Buffer, IBuffer::clear(), Socket::connect(), IWriter::cr(), IConduit::createBuffer(), DisplayWriter, IConduit::Eof, AbstractReader::get(), CompositeToken::get(), IWriter::put(), IConduit::read(), IBuffer::readable(), Reader, SocketConduit::setTimeout(), SocketConduit, and IBuffer::toString().

void testHttpClient2  ) 
 

Extract client-side headers from an HTTP reply

Definition at line 1741 of file unittest.d.

References IBuffer::clear(), Socket::connect(), IWriter::cr(), SocketConduit::createBuffer(), DisplayWriter, IConduit::Eof, HttpHeaders::parse, IWriter::put(), SocketConduit::read(), SocketConduit::setTimeout(), and IBuffer::toString().

void testHttpClient3  ) 
 

Poke an HTTP server, using HttpClient.

Definition at line 1787 of file unittest.d.

References HttpMutableHeaders::add(), Uri::getHost(), HttpHeaders::getInt(), HttpClient::getRequestHeaders(), HttpClient::getResponseHeaders(), HttpClient::getUri(), HttpClient, HttpClient::isResponseOK(), HttpClient::open(), and HttpClient::read().

void testPlainCache  ) 
 

Definition at line 1837 of file unittest.d.

References PlainCache::extract(), PlainCache::get(), Payload, PlainCache, and PlainCache::put().

void testQueuedCache  ) 
 

QueuedCache maintains a linked list of items, in addition to a hashmap. Any reference to an item places it at the list head, resulting in the LRU items always being left at the tail. When the list becomes full, tail items are dropped and their places reused.

This is great for keeping commonly accessed items around, while limiting the amount of memory used.

Typically, the queue size would be set in the hundreds (perhaps thousands) but we just use 2 for testing purposes.

Definition at line 1868 of file unittest.d.

References QueuedCache::get(), Payload, QueuedCache::put(), and QueuedCache.

void testFileBucket  ) 
 

Stuff some data into a FileBucket, and pull it out again.

Definition at line 1887 of file unittest.d.

References FileBucket::close(), FileBucket, FileBucket::get(), and FileBucket::put().

void testVirtualCache  ) 
 

Use a combination of QueuedCache and FileBucket to spill LRU cache entries onto the hard-drive, and then recover them intact.

This demonstrates what one can do with the IPickle notion.

Definition at line 1911 of file unittest.d.

References FileBucket::close(), FileBucket, VirtualCache::get(), Payload, VirtualCache::put(), and VirtualCache.

void testProtocol  ) 
 

Definition at line 1932 of file unittest.d.

References Buffer, ProtocolWriter::Command, Payload::create(), IReader::get(), Payload::getGuid(), ProtocolReader::getPayload(), ProtocolReader, ProtocolWriter, ProtocolWriter::put(), IWriter::put(), Payload::read(), and Payload::write().

void testHashMap  ) 
 

Definition at line 2002 of file unittest.d.

References HashMap, Logger::info(), HashMap::put(), and HashMap::remove().

void testMulticast  ) 
 

Join a socket to a multicast group, and send the group a packet.

Definition at line 2099 of file unittest.d.

References Buffer, MulticastSocket::join(), MulticastSocket, SocketListener::notify(), IBuffer::readable(), and DatagramSocket::write().

void testClusterCache  ) 
 

Definition at line 2143 of file unittest.d.

References Cluster, NetworkCache::get(), NetworkCache, and NetworkCache::put().

void testClusterQueue  ) 
 

Definition at line 2188 of file unittest.d.

References Cluster, NetworkQueue::createConsumer(), IEvent::getChannel(), IChannel::getName(), NetworkQueue, IEventListener::notify(), and NetworkQueue::put().

void testInvalidatee  ) 
 

Definition at line 2216 of file unittest.d.

References CacheInvalidatee, CacheInvalidator, Cluster, and CacheInvalidator::invalidate().

void testClusterServer  ) 
 

Definition at line 2234 of file unittest.d.

References ClusterServer, Socket::connect(), SocketConduit, and ClusterServer::start().

void testClusterMessage  ) 
 

Definition at line 2251 of file unittest.d.

References Cluster, NetworkQueue::createConsumer(), IMessage::getReply(), IEventListener::notify(), NetworkMessage::put(), and IEvent::reply().

void testCacheLoader  ) 
 

Definition at line 2297 of file unittest.d.

References IMutableCache::bind(), ICache::get(), ICacheLoader::load(), ICacheLoader::test(), and time.

void testRemoteCacheLoader  ) 
 

Definition at line 2325 of file unittest.d.

References NetworkCache::bind(), Cluster, IPickleFactory::create(), ICache::get(), IPickle::getGuid(), ICacheLoader::load(), NetworkCache, IRemoteCacheLoader::pause(), Payload::read(), IReadable::read(), ICacheLoader::test(), time, and IWritable::write().

void testDisplay  ) 
 

Definition at line 2411 of file unittest.d.

References IStringEncoder::char16(), IStringEncoder::char32(), IStringEncoder::char8(), IWriter::cr(), DisplayWriter, IWriter::flush(), IWriter::put(), and IWriter::setStringEncoder().

void testTextWriter  ) 
 

Definition at line 2456 of file unittest.d.

References IStringEncoder::char16(), IStringEncoder::char32(), IStringEncoder::char8(), IWriter::cr(), IWriter::flush(), IWriter::put(), IWriter::setStringEncoder(), and TextWriter.

int main char  args[][]  ) 
 

Definition at line 2498 of file unittest.d.

References Logger::fatal(), Logger::getLogger(), and Logger::info().


Variable Documentation

import mango io Uri
 

Definition at line 202 of file unittest.d.

Referenced by testFilePath().

import mango io mango io Stdio
 

Definition at line 202 of file unittest.d.

import mango io mango io mango io Token
 

Definition at line 202 of file unittest.d.

Referenced by TokenStack::resize(), and testFile3().

import mango io mango io mango io mango io Reader
 

Definition at line 202 of file unittest.d.

Referenced by testBuffer(), testClassIO(), testCompositeIO(), testConduitFilters(), testHttpClient(), testRandomAccess(), and testToken2().

import mango io mango io mango io mango io mango io Writer
 

Definition at line 202 of file unittest.d.

Referenced by testBuffer(), testClassIO(), testCompositeIO(), testConduitFilters(), and testRandomAccess().

import mango io mango io mango io mango io mango io mango io Buffer
 

Definition at line 202 of file unittest.d.

Referenced by SocketConduit::createBuffer(), FileConduit::createBuffer(), FilePath::splice(), testAppend(), testBuffer(), testClassIO(), testClassSerialization(), testClient(), testDirectIO(), testHttpClient(), testMulticast(), testProtocol(), testToken1(), testToken2(), testToken3(), HttpResponse::this(), HttpMessage::this(), CacheServer::LoaderThread::this(), BulletinConsumer::this(), Cluster::this(), and FilePath::toString().

import mango io mango io mango io mango io mango io mango io mango io Socket
 

Definition at line 202 of file unittest.d.

import mango io mango io mango io mango io mango io mango io mango io mango io Conduit
 

Definition at line 202 of file unittest.d.

import mango io mango io mango io mango io mango io mango io mango io mango io mango io FilePath
 

Definition at line 202 of file unittest.d.

Referenced by FileSystem::Versionlinux::getDirectory(), FileSystem::VersionWin32::getDirectory(), testFilePath(), testScanFiles(), FileProxy::this(), FileConduit::this(), FileProxy::Versionlinux::toList(), FileProxy::VersionWin32::toList(), FilePath::toParent(), and FilePath::toSibling().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io FileStyle
 

Definition at line 202 of file unittest.d.

Referenced by FileStyle::this().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io FileProxy
 

Definition at line 202 of file unittest.d.

Referenced by testFileList(), testFileSize(), and testScanFiles().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io Tokenizer
 

Definition at line 202 of file unittest.d.

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io TextReader
 

Definition at line 202 of file unittest.d.

Referenced by testToken3(), VersionArrayReaderSupport::testToken4(), and Stdio::this().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io TextWriter
 

Definition at line 202 of file unittest.d.

Referenced by testTextWriter(), testToken1(), testToken2(), and testToken3().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io FileBucket
 

Definition at line 202 of file unittest.d.

Referenced by testFileBucket(), and testVirtualCache().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io FileConduit
 

Definition at line 202 of file unittest.d.

Referenced by FileConduit::copy(), ServletContext::getResourceAsFile(), Properties::load(), testCompositeIO(), testConduitFilters(), testDirectIO(), testFile1(), testFile2(), testFile3(), testFile4(), testFile5(), testFileRegex(), testLineRegex(), testMappedFile(), testRandomAccess(), VersionArrayReaderSupport::testToken4(), Stdio::this(), and FileBucket::this().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io TextLayout
 

Definition at line 202 of file unittest.d.

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io TextFormat
 

Definition at line 202 of file unittest.d.

Referenced by testFormat().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io ColumnWriter
 

Definition at line 202 of file unittest.d.

Referenced by testColumn().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io DisplayWriter
 

Definition at line 202 of file unittest.d.

Referenced by HttpClient::open(), VersionMango::FileAppender::setConduit(), testDisplay(), testHttpClient(), testHttpClient2(), testSocket(), testSocketRegex(), and Stdio::this().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io PickleReader
 

Definition at line 202 of file unittest.d.

Referenced by testClassSerialization(), and VirtualCache::this().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io PickleWriter
 

Definition at line 202 of file unittest.d.

Referenced by testClassSerialization(), and VirtualCache::this().

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io SocketConduit
 

Definition at line 202 of file unittest.d.

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io SocketListener
 

Definition at line 202 of file unittest.d.

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io ArrayAllocator
 

Definition at line 202 of file unittest.d.

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io PickleRegistry
 

Definition at line 202 of file unittest.d.

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io DatagramSocket
 

Definition at line 202 of file unittest.d.

import mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io mango io MulticastSocket
 

Definition at line 202 of file unittest.d.

Referenced by testMulticast().

import mango log Logger
 

Definition at line 232 of file unittest.d.

import mango log mango log Layout
 

Definition at line 232 of file unittest.d.

import mango log mango log mango log Manager
 

Definition at line 232 of file unittest.d.

import mango log mango log mango log mango log DateLayout
 

Definition at line 232 of file unittest.d.

import mango log mango log mango log mango log mango log Configurator
 

Definition at line 232 of file unittest.d.

import mango log mango log mango log mango log mango log mango log FileAppender
 

Definition at line 232 of file unittest.d.

import mango log mango log mango log mango log mango log mango log mango log StdioAppender
 

Definition at line 232 of file unittest.d.

import mango log mango log mango log mango log mango log mango log mango log mango log ConsoleAppender
 

Definition at line 232 of file unittest.d.

import mango log mango log mango log mango log mango log mango log mango log mango log mango log RollingFileAppender
 

Definition at line 232 of file unittest.d.

import mango io model IReader
 

Definition at line 243 of file unittest.d.

import mango io model mango io model IWriter
 

Definition at line 243 of file unittest.d.

import mango io model mango io model mango io model IPickle
 

Definition at line 243 of file unittest.d.

import mango http server HttpParams
 

Definition at line 248 of file unittest.d.

Referenced by HttpParams::clone(), and HttpRequest::this().

import mango http server mango http server HttpCookies
 

Definition at line 248 of file unittest.d.

Referenced by HttpRequest::this().

import mango http server mango http server mango http server HttpHeaders
 

Definition at line 248 of file unittest.d.

Referenced by HttpHeaders::clone(), and HttpClient::this().

import mango http server mango http server mango http server mango http server HttpServer
 

Definition at line 248 of file unittest.d.

Referenced by testServer(), and TaskServer::this().

import mango http server mango http server mango http server mango http server mango http server HttpRequest
 

Definition at line 248 of file unittest.d.

Referenced by HttpProvider::createRequest().

import mango http server mango http server mango http server mango http server mango http server mango http server HttpResponse
 

Definition at line 248 of file unittest.d.

Referenced by HttpProvider::createResponse().

import mango http server mango http server mango http server mango http server mango http server mango http server mango http server HttpProvider
 

Definition at line 248 of file unittest.d.

import mango http server model IProvider
 

Definition at line 256 of file unittest.d.

import mango http server model mango http server model IProviderBridge
 

Definition at line 256 of file unittest.d.

import mango http client HttpClient
 

Definition at line 259 of file unittest.d.

Referenced by testHttpClient3().

import mango servlet Servlet
 

Definition at line 261 of file unittest.d.

import mango servlet mango servlet ServletConfig
 

Definition at line 261 of file unittest.d.

import mango servlet mango servlet mango servlet ServletContext
 

Definition at line 261 of file unittest.d.

import mango servlet mango servlet mango servlet mango servlet ServletProvider
 

Definition at line 261 of file unittest.d.

Referenced by testServletEngine().

import mango cache PlainCache
 

Definition at line 266 of file unittest.d.

Referenced by testPlainCache().

import mango cache mango cache HashMap
 

Definition at line 266 of file unittest.d.

Referenced by testHashMap(), ServletProvider::this(), PlainCache::this(), ChannelCache::this(), ClusterQueue::this(), ClusterCache::this(), and Cluster::this().

import mango cache mango cache mango cache Payload
 

Definition at line 266 of file unittest.d.

import mango cache mango cache mango cache mango cache QueuedCache
 

Definition at line 266 of file unittest.d.

Referenced by testQueuedCache(), ServletProvider::this(), and ChannelCache::this().

import mango cache mango cache mango cache mango cache mango cache VirtualCache
 

Definition at line 266 of file unittest.d.

Referenced by testVirtualCache().

import mango cluster Message
 

Definition at line 272 of file unittest.d.

import mango cluster mango cluster NetworkQueue
 

Definition at line 272 of file unittest.d.

Referenced by testClusterQueue().

import mango cluster mango cluster mango cluster NetworkCache
 

Definition at line 272 of file unittest.d.

Referenced by testClusterCache(), and testRemoteCacheLoader().

import mango cluster mango cluster mango cluster mango cluster CacheInvalidator
 

Definition at line 272 of file unittest.d.

Referenced by testInvalidatee().

import mango cluster mango cluster mango cluster mango cluster mango cluster CacheInvalidatee
 

Definition at line 272 of file unittest.d.

Referenced by testInvalidatee(), and ChannelCache::this().

import mango cluster qos socket Cluster
 

Definition at line 278 of file unittest.d.

Referenced by testClusterCache(), testClusterMessage(), testClusterQueue(), testInvalidatee(), testRemoteCacheLoader(), and ClusterServer::this().

import mango cluster qos socket mango cluster qos socket ClusterServer
 

Definition at line 278 of file unittest.d.

Referenced by testClusterServer().

import mango cluster qos socket mango cluster qos socket mango cluster qos socket ProtocolReader
 

Definition at line 278 of file unittest.d.

Referenced by testProtocol(), ClusterThread::this(), CacheServer::LoaderThread::this(), and BulletinConsumer::this().

import mango cluster qos socket mango cluster qos socket mango cluster qos socket mango cluster qos socket ProtocolWriter
 

Definition at line 278 of file unittest.d.

Referenced by testProtocol(), ClusterThread::this(), CacheServer::LoaderThread::this(), and Cluster::this().

Logger logger
 

global scope variables

Definition at line 289 of file unittest.d.

import std regexp
 

Definition at line 991 of file unittest.d.


Generated on Sun Nov 7 19:06:58 2004 for Mango by doxygen 1.3.6