codetester.java

来自「High performance DB query」· Java 代码 · 共 117 行

JAVA
117
字号
/* * @(#)$Id: CodeTester.java,v 1.5 2004/07/02 23:59:22 huebsch Exp $ * * Copyright (c) 2001-2004 Regents of the University of California. * All rights reserved. * * This file is distributed under the terms in the attached BERKELEY-LICENSE * file. If you do not find these files, copies can be found by writing to: * Computer Science Division, Database Group, Universite of California, * 617 Soda Hall #1776, Berkeley, CA 94720-1776. Attention: Berkeley License * * Copyright (c) 2003-2004 Intel Corporation. All rights reserved. * * This file is distributed under the terms in the attached INTEL-LICENSE file. * If you do not find these files, copies can be found by writing to: * Intel Research Berkeley, 2150 Shattuck Avenue, Suite 1300, * Berkeley, CA, 94704.  Attention:  Intel License Inquiry. */package simulator.schedulers.clock;import simulator.core.Node;import simulator.core.NodeMap;import simulator.core.Simulator;import simulator.schedulers.clock.synced.SyncedClockScheduler;import simulator.schedulers.clock.synced.SyncedClockStub;import util.CodeTests;/** * Class CodeTester * */public class CodeTester {    private static final int NUM_NODES = 1024;    private static final int NUM_EVENTS = 1024;    /**     * Constructor CodeTester     */    public CodeTester() {        runTests();    }    /**     * Method main     *     * @param args     */    public static void main(String[] args) {        runTests();    }    /**     * Method runTests     */    public static void runTests() {        doSyncedClock();    }    private static void doSyncedClock() {        CodeTests.startTestGroup("Synced Clock Tests", "SCLK");        CodeTests.startTest("Create Scheduler");        NodeMap theNodeMap = new NodeMap();        Simulator theSimulator = new Simulator(theNodeMap);        SyncedClockScheduler theClockScheduler =            new SyncedClockScheduler(theSimulator, theNodeMap);        CodeTests.assertionTest((theClockScheduler != null));        CodeTests.startTest("Create Stubs");        for (int i = 0; i < NUM_NODES; i++) {            Node node = new Node(null, null, null, null, null, null, 0,                                 new SyncedClockStub(theClockScheduler), null);            theNodeMap.addNode(node);        }        CodeTests.testPass();        CodeTests.startTest("Creating Clock Events");        SimpleEventHandler client = new SimpleEventHandler();        for (int i = 0; i < NUM_EVENTS; i++) {            theNodeMap.getNode(0).getClockStub().schedule(i, new Integer(i),                               client);        }        CodeTests.testPass();        CodeTests.startTest("Running Simulator");        theSimulator.runQueue();        CodeTests.assertionTest((client.error == false));        CodeTests.endTestGroup();    }    private static class SimpleEventHandler implements ClockClient {        public int eventCount = 0;        public boolean error = false;        /**         * Method handleClock         *         * @param clockData         */        public void handleClock(Object clockData) {            if (((Integer) clockData).intValue() != eventCount) {                error = true;            }            eventCount++;        }    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?