Skip to content
This repository has been archived by the owner on Aug 5, 2022. It is now read-only.
/ jndn-mock Public archive

Tools for testing NDN applications without network IO

License

Notifications You must be signed in to change notification settings

intel/jndn-mock

Repository files navigation

DISCONTINUATION OF PROJECT.

This project will no longer be maintained by Intel.

Intel has ceased development and contributions including, but not limited to, maintenance, bug fixes, new releases, or updates, to this project.

Intel no longer accepts patches to this project.

If you have an ongoing need to use this project, are interested in independently developing it, or would like to maintain patches for the open source software community, please create your own fork of this project.

jndn-mock

This project consists of tools for testing NDN applications without network IO. It relies on the NDN Protocol and its associated client library.

Install

With Maven, add the following to your POM:

<dependency>
  <groupId>com.intel.jndn.mock</groupId>
  <artifactId>jndn-mock</artifactId>
  <version>RELEASE</version> <!-- or a specific version -->
</dependency>

Use

MockFace is a test tool that can be passed to applications instead of a network IO Face; management of the Face.processEvents() is still the user's responsibility, though this may change in a future release. For example:

Face face = new MockFace();
face.expressInterest(interest, onData, onTimeout);
face.processEvents();

When using the MockFace, retrieve statistics about sent/received Interests and Data packets like:

MockFace face = new MockFace();
assertEquals(0, face.sentDatas.size());
assertEquals(0, face.sentInterests.size());

face.expressInterest(interest, onData, onTimeout);
...
face.processEvents();
...
assertEquals(1, face.sentInterests.size());

License

Copyright 2015, Intel Corporation.

This program is free software; you can redistribute it and/or modify it under the terms and conditions of the GNU Lesser General Public License, version 3, as published by the Free Software Foundation.

This program is distributed in the hope it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.