Permalink
Commits on Oct 23, 2012
  1. Update commit log for 0.2.0.7

    edsko committed Oct 23, 2012
  2. Bump version number to 0.4.0.2

    edsko committed Oct 23, 2012
  3. Partial fix for race condition in spawn

    This fix is "partial" because it relies on the strong ordering guarantees
    provided by the TCP transport; with other transports it may still break.
    edsko committed Oct 23, 2012
  4. Fix contact information

    edsko committed Oct 23, 2012
Commits on Oct 22, 2012
Commits on Oct 19, 2012
  1. Fix groupByKey

    make sure that endpoints get at least an associated empty list of events, so
    that the actual events and expected events ahve the same set of keys (that is,
    the addresses of all created endpoints)
    edsko committed Oct 19, 2012
  2. Bundle per pair of endpoints

    Not all unit tests pass yet though.
    edsko committed Oct 19, 2012
  3. Introduce 'bundle' concept

    This is not quite right yet, because bundles should be per endpoint.
    edsko committed Oct 19, 2012
  4. Prep for release 0.1.0.1

    edsko committed Oct 19, 2012
  5. Prep for release 0.3.1.

    Add support for expected failures so that unimplemented unit tests show as Ok
    rather than Failed.
    
    Remove debugging print statement.
    edsko committed Oct 19, 2012
Commits on Oct 18, 2012
  1. Major re-engineering of the test infrastructure

    Compared to the previous version, this
    
    - Merges execution and verification of scripts. This means we can be more
      precise in what we actually test
    - Introduced an explicit data type for "Expected events" which can contain
      variables (existentials) for connection IDs. This makes it possible to
      specify the expected event when we open a new connection (we don't know
      what connection ID will be assigned, so we just create an existential)
    - Make reordering of events explicit: we introduce a function that creates all
      permissible reordering of events (that is, events across connections can
      be reordered, but events within the same connection cannot)
    
    We can now run all the tests that don't contain errors without explicit delays,
    so that unit tests run much faster, and we are testing much more thoroughly: by
    introducing delays at every step we greatly reduce concurrency; we can now even
    run test scripts in parallel (but first we need to reintroduce support for
    scripts with errors).
    edsko committed Oct 18, 2012
  2. More support for dealing with errors

    However, current setup in the mock network implementation is insufficient,
    because it requires the existence of a socket before we can register an error.
    That means we can't simulate certain errors (for instance, failure when trying
    to create the first connection) because we can't hook into the network layer to
    get the socket at that point.
    edsko committed Oct 18, 2012
Commits on Oct 17, 2012
  1. Cleanup.

    edsko committed Oct 17, 2012
  2. Start introducing simulated network errors

    Script verification does not yet handle these errors
    edsko committed Oct 17, 2012
Commits on Oct 16, 2012
  1. Cleanup. Add support for 'send'

    edsko committed Oct 16, 2012
Commits on Oct 15, 2012
  1. Important bugfix: reconnecting didn't always work

    The following sequence resulted in deadlock:
    
      A connects to B
      A closes connection
      B connects to A
      B closes connection
      B reconnects to A
    
    The problem was in the network protocol, where A tells B the ID of the last
    connection B opened to A. If this is lower than the last connection B
    *actually* opened, B knows there are still some messages on the way to A and B
    must wait before they are resolved. However, this connection ID should be kept
    *per heavyweight connection*. We were inconsistent about this: we recorded the
    ID of the last created connection on the heavyweight connection, but the next
    available ID was a 'global' variable on the local endpoint.
    
    This meant that B sometimes incorrectly concluded that some messages were still
    on the way to A, resulting in deadlock.
    edsko committed Oct 15, 2012
  2. Cleanup

    edsko committed Oct 15, 2012
  3. Add support for testing individual scripts

    And add a script that appears to identify a bug in N.T.TCP :(
    edsko committed Oct 15, 2012
Commits on Oct 12, 2012
  1. Continue work on script driven testing

    There appears to be a bug in the mock network implementation, ConnectClose
    deadlocks sometimes with the mock but never with a real socket.
    edsko committed Oct 12, 2012
  2. Implement the abstract interpreter

    edsko committed Oct 12, 2012
  3. Continue work on the script-driven testing

    Collecting of events is more implemented properly; still need the abstract
    interpreter.
    edsko committed Oct 12, 2012
Commits on Oct 11, 2012
  1. Start work on more unit testing.

    edsko committed Oct 11, 2012
  2. Relax upper bound on base

    edsko committed Oct 11, 2012
  3. Fix bug in mock network interface

    When closing a socket, the peer socket is closed _after_ messages that were
    already sent have been delivered.
    edsko committed Oct 11, 2012
Commits on Oct 10, 2012
  1. Handle exceptions in N.T.Util.spawn

    This closes #42.
    edsko committed Oct 10, 2012
Commits on Oct 5, 2012
  1. Use FQN for functionSDict and functionTDict

    This closes #41.
    edsko committed Oct 5, 2012
Commits on Oct 4, 2012
  1. Rename files

    edsko committed Oct 4, 2012
  2. Add the PDF to the repository

    edsko committed Oct 4, 2012