亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? testcircularfifobuffer.java

?? iBATIS似乎已遠(yuǎn)離眾說紛紜的OR框架之列
?? JAVA
字號:
/*
 *  Licensed to the Apache Software Foundation (ASF) under one or more
 *  contributor license agreements.  See the NOTICE file distributed with
 *  this work for additional information regarding copyright ownership.
 *  The ASF licenses this file to You under the Apache License, Version 2.0
 *  (the "License"); you may not use this file except in compliance with
 *  the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */
package org.apache.commons.collections.buffer;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;

import junit.framework.Test;
import junit.textui.TestRunner;

import org.apache.commons.collections.Buffer;
import org.apache.commons.collections.BufferUnderflowException;
import org.apache.commons.collections.BulkTest;
import org.apache.commons.collections.collection.AbstractTestCollection;

/**
 * Test cases for CircularFifoBuffer.
 * 
 * @version $Revision: 646780 $ $Date: 2008-04-10 13:48:07 +0100 (Thu, 10 Apr 2008) $
 * 
 * @author Stephen Colebourne
 */
public class TestCircularFifoBuffer extends AbstractTestCollection {

    public TestCircularFifoBuffer(String n) {
        super(n);
    }

    public static Test suite() {
        return BulkTest.makeSuite(TestCircularFifoBuffer.class);
    }

    public static void main(String args[]) {
        TestRunner.run(TestCircularFifoBuffer.class);
    }

    //-----------------------------------------------------------------------
    /**
     *  Runs through the regular verifications, but also verifies that 
     *  the buffer contains the same elements in the same sequence as the
     *  list.
     */
    public void verify() {
        super.verify();
        Iterator iterator1 = collection.iterator();
        Iterator iterator2 = confirmed.iterator();
        while (iterator2.hasNext()) {
            assertTrue(iterator1.hasNext());
            Object o1 = iterator1.next();
            Object o2 = iterator2.next();
            assertEquals(o1, o2);
        }
    }

    //-----------------------------------------------------------------------
    /**
     * Overridden because UnboundedFifoBuffer doesn't allow null elements.
     * @return false
     */
    public boolean isNullSupported() {
        return false;
    }

    /**
     * Overridden because UnboundedFifoBuffer isn't fail fast.
     * @return false
     */
    public boolean isFailFastSupported() {
        return false;
    }

    //-----------------------------------------------------------------------
    /**
     * Returns an empty ArrayList.
     *
     * @return an empty ArrayList
     */
    public Collection makeConfirmedCollection() {
        return new ArrayList();
    }

    /**
     * Returns a full ArrayList.
     *
     * @return a full ArrayList
     */
    public Collection makeConfirmedFullCollection() {
        Collection c = makeConfirmedCollection();
        c.addAll(java.util.Arrays.asList(getFullElements()));
        return c;
    }

    /**
     * Returns an empty BoundedFifoBuffer that won't overflow.  
     *  
     * @return an empty BoundedFifoBuffer
     */
    public Collection makeCollection() {
        return new CircularFifoBuffer(100);
    }

    //-----------------------------------------------------------------------
    /**
     * Tests that the removal operation actually removes the first element.
     */
    public void testCircularFifoBufferCircular() {
        List list = new ArrayList();
        list.add("A");
        list.add("B");
        list.add("C");
        Buffer buf = new CircularFifoBuffer(list);
        
        assertEquals(true, buf.contains("A"));
        assertEquals(true, buf.contains("B"));
        assertEquals(true, buf.contains("C"));
        
        buf.add("D");
        
        assertEquals(false, buf.contains("A"));
        assertEquals(true, buf.contains("B"));
        assertEquals(true, buf.contains("C"));
        assertEquals(true, buf.contains("D"));
        
        assertEquals("B", buf.get());
        assertEquals("B", buf.remove());
        assertEquals("C", buf.remove());
        assertEquals("D", buf.remove());
    }

    /**
     * Tests that the removal operation actually removes the first element.
     */
    public void testCircularFifoBufferRemove() {
        resetFull();
        int size = confirmed.size();
        for (int i = 0; i < size; i++) {
            Object o1 = ((CircularFifoBuffer) collection).remove();
            Object o2 = ((ArrayList) confirmed).remove(0);
            assertEquals("Removed objects should be equal", o1, o2);
            verify();
        }

        try {
            ((CircularFifoBuffer) collection).remove();
            fail("Empty buffer should raise Underflow.");
        } catch (BufferUnderflowException e) {
            // expected
        }
    }

    /**
     * Tests that the constructor correctly throws an exception.
     */
    public void testConstructorException1() {
        try {
            new CircularFifoBuffer(0);
        } catch (IllegalArgumentException ex) {
            return;
        }
        fail();
    }

    /**
     * Tests that the constructor correctly throws an exception.
     */
    public void testConstructorException2() {
        try {
            new CircularFifoBuffer(-20);
        } catch (IllegalArgumentException ex) {
            return;
        }
        fail();
    }
    
    /**
     * Tests that the constructor correctly throws an exception.
     */
    public void testConstructorException3() {
        try {
            new CircularFifoBuffer(null);
        } catch (NullPointerException ex) {
            return;
        }
        fail();
    }
    
    public void testRemoveError1() throws Exception {
        // based on bug 33071
        CircularFifoBuffer fifo = new CircularFifoBuffer(5);
        fifo.add("1");
        fifo.add("2");
        fifo.add("3");
        fifo.add("4");
        fifo.add("5");
        
        assertEquals("[1, 2, 3, 4, 5]", fifo.toString());
        
        fifo.remove("3");
        assertEquals("[1, 2, 4, 5]", fifo.toString());
        
        fifo.remove("4");
        assertEquals("[1, 2, 5]", fifo.toString());
    }

    public void testRemoveError2() throws Exception {
        // based on bug 33071
        CircularFifoBuffer fifo = new CircularFifoBuffer(5);
        fifo.add("1");
        fifo.add("2");
        fifo.add("3");
        fifo.add("4");
        fifo.add("5");
        fifo.add("6");
        
        assertEquals(5, fifo.size());
        assertEquals("[2, 3, 4, 5, 6]", fifo.toString());
        
        fifo.remove("3");
        assertEquals("[2, 4, 5, 6]", fifo.toString());
        
        fifo.remove("4");
        assertEquals("[2, 5, 6]", fifo.toString());
    }

    public void testRemoveError3() throws Exception {
        // based on bug 33071
        CircularFifoBuffer fifo = new CircularFifoBuffer(5);
        fifo.add("1");
        fifo.add("2");
        fifo.add("3");
        fifo.add("4");
        fifo.add("5");
        
        assertEquals("[1, 2, 3, 4, 5]", fifo.toString());
        
        fifo.remove("3");
        assertEquals("[1, 2, 4, 5]", fifo.toString());
        
        fifo.add("6");
        fifo.add("7");
        assertEquals("[2, 4, 5, 6, 7]", fifo.toString());
        
        fifo.remove("4");
        assertEquals("[2, 5, 6, 7]", fifo.toString());
    }

    public void testRemoveError4() throws Exception {
        // based on bug 33071
        CircularFifoBuffer fifo = new CircularFifoBuffer(5);
        fifo.add("1");
        fifo.add("2");
        fifo.add("3");
        fifo.add("4");
        fifo.add("5");  // end=0
        fifo.add("6");  // end=1
        fifo.add("7");  // end=2
        
        assertEquals("[3, 4, 5, 6, 7]", fifo.toString());
        
        fifo.remove("4");  // remove element in middle of array, after start
        assertEquals("[3, 5, 6, 7]", fifo.toString());
    }

    public void testRemoveError5() throws Exception {
        // based on bug 33071
        CircularFifoBuffer fifo = new CircularFifoBuffer(5);
        fifo.add("1");
        fifo.add("2");
        fifo.add("3");
        fifo.add("4");
        fifo.add("5");  // end=0
        fifo.add("6");  // end=1
        fifo.add("7");  // end=2
        
        assertEquals("[3, 4, 5, 6, 7]", fifo.toString());
        
        fifo.remove("5");  // remove element at last pos in array
        assertEquals("[3, 4, 6, 7]", fifo.toString());
    }

    public void testRemoveError6() throws Exception {
        // based on bug 33071
        CircularFifoBuffer fifo = new CircularFifoBuffer(5);
        fifo.add("1");
        fifo.add("2");
        fifo.add("3");
        fifo.add("4");
        fifo.add("5");  // end=0
        fifo.add("6");  // end=1
        fifo.add("7");  // end=2
        
        assertEquals("[3, 4, 5, 6, 7]", fifo.toString());
        
        fifo.remove("6");  // remove element at position zero in array
        assertEquals("[3, 4, 5, 7]", fifo.toString());
    }

    public void testRemoveError7() throws Exception {
        // based on bug 33071
        CircularFifoBuffer fifo = new CircularFifoBuffer(5);
        fifo.add("1");
        fifo.add("2");
        fifo.add("3");
        fifo.add("4");
        fifo.add("5");  // end=0
        fifo.add("6");  // end=1
        fifo.add("7");  // end=2
        
        assertEquals("[3, 4, 5, 6, 7]", fifo.toString());
        
        fifo.remove("7");  // remove element at position one in array
        assertEquals("[3, 4, 5, 6]", fifo.toString());
    }

    public void testRemoveError8() throws Exception {
        // based on bug 33071
        CircularFifoBuffer fifo = new CircularFifoBuffer(5);
        fifo.add("1");
        fifo.add("2");
        fifo.add("3");
        fifo.add("4");
        fifo.add("5");  // end=0
        fifo.add("6");  // end=1
        fifo.add("7");  // end=2
        fifo.add("8");  // end=3
        
        assertEquals("[4, 5, 6, 7, 8]", fifo.toString());
        
        fifo.remove("7");  // remove element at position one in array, need to shift 8
        assertEquals("[4, 5, 6, 8]", fifo.toString());
    }

    public void testRemoveError9() throws Exception {
        // based on bug 33071
        CircularFifoBuffer fifo = new CircularFifoBuffer(5);
        fifo.add("1");
        fifo.add("2");
        fifo.add("3");
        fifo.add("4");
        fifo.add("5");  // end=0
        fifo.add("6");  // end=1
        fifo.add("7");  // end=2
        fifo.add("8");  // end=3
        
        assertEquals("[4, 5, 6, 7, 8]", fifo.toString());
        
        fifo.remove("8");  // remove element at position two in array
        assertEquals("[4, 5, 6, 7]", fifo.toString());
    }

    //-----------------------------------------------------------------------
    public void testRepeatedSerialization() throws Exception {
        // bug 31433
        CircularFifoBuffer b = new CircularFifoBuffer(2);
        b.add("a");
        assertEquals(1, b.size());
        assertEquals(true, b.contains("a"));
        
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        new ObjectOutputStream(bos).writeObject(b);
        
        CircularFifoBuffer b2 = (CircularFifoBuffer) new ObjectInputStream(
            new ByteArrayInputStream(bos.toByteArray())).readObject();
        
        assertEquals(1, b2.size());
        assertEquals(true, b2.contains("a"));
        b2.add("b");
        assertEquals(2, b2.size());
        assertEquals(true, b2.contains("a"));
        assertEquals(true, b2.contains("b"));
        
        bos = new ByteArrayOutputStream();
        new ObjectOutputStream(bos).writeObject(b2);
        
        CircularFifoBuffer b3 = (CircularFifoBuffer) new ObjectInputStream(
            new ByteArrayInputStream(bos.toByteArray())).readObject();
        
        assertEquals(2, b3.size());
        assertEquals(true, b3.contains("a"));
        assertEquals(true, b3.contains("b"));
        b3.add("c");
        assertEquals(2, b3.size());
        assertEquals(true, b3.contains("b"));
        assertEquals(true, b3.contains("c"));
    }

    public String getCompatibilityVersion() {
        return "3.1";
    }

//    public void testCreate() throws Exception {
//        resetEmpty();
//        writeExternalFormToDisk((java.io.Serializable) collection, "D:/dev/collections/data/test/CircularFifoBuffer.emptyCollection.version3.1.obj");
//        resetFull();
//        writeExternalFormToDisk((java.io.Serializable) collection, "D:/dev/collections/data/test/CircularFifoBuffer.fullCollection.version3.1.obj");
//    }

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人精品一区二区三区四区| 欧美一区二区在线播放| 国产资源在线一区| 日韩av午夜在线观看| 午夜私人影院久久久久| 亚洲精品菠萝久久久久久久| 中文字幕在线不卡一区二区三区| 久久精品在线观看| 中文字幕精品在线不卡| 国产喷白浆一区二区三区| 26uuu亚洲| 久久久久久久久99精品| 国产网站一区二区| 国产精品狼人久久影院观看方式| 亚洲国产高清aⅴ视频| 国产精品久久久久桃色tv| 国产精品天美传媒| 国产精品久久久久永久免费观看 | 欧美一区二区免费| 欧美一区二区精美| 精品精品国产高清一毛片一天堂| 精品久久久久久久久久久久久久久 | 亚洲精品综合在线| 亚洲一区二区美女| 午夜久久久久久| 免费观看久久久4p| 国产精品白丝av| aaa亚洲精品一二三区| 色婷婷av久久久久久久| 欧美日韩五月天| 欧美videos大乳护士334| 国产亚洲福利社区一区| 国产精品美女久久久久久2018| 亚洲欧洲99久久| 亚洲18女电影在线观看| 黄色小说综合网站| gogogo免费视频观看亚洲一| 在线观看三级视频欧美| 欧美一级在线视频| 国产欧美日韩一区二区三区在线观看| 国产精品电影一区二区三区| 亚洲永久精品国产| 久久69国产一区二区蜜臀| 国产精品一区二区黑丝| 色婷婷激情一区二区三区| 这里只有精品电影| 亚洲国产精品激情在线观看| 亚洲一区二区三区美女| 国内精品久久久久影院薰衣草| 9i在线看片成人免费| 欧美精品aⅴ在线视频| 久久久www成人免费毛片麻豆| 亚洲同性gay激情无套| 日本视频免费一区| 91性感美女视频| 欧美v国产在线一区二区三区| 亚洲欧洲性图库| 日本美女一区二区| thepron国产精品| 日韩欧美国产高清| 亚洲美女视频在线| 国产一区二区三区日韩| 欧美特级限制片免费在线观看| 欧美精品一区二区三区在线| 亚洲欧美日韩国产中文在线| 激情五月婷婷综合网| 欧美午夜精品一区二区蜜桃| 国产婷婷色一区二区三区| 日韩影院免费视频| 96av麻豆蜜桃一区二区| 精品欧美一区二区三区精品久久 | 久久久久久久久久久久久夜| 亚洲线精品一区二区三区| 国产激情精品久久久第一区二区| 欧美日韩免费高清一区色橹橹| 国产女人aaa级久久久级| 日本一不卡视频| 欧美三级在线视频| 亚洲色大成网站www久久九九| 国内精品久久久久影院色 | 亚洲免费毛片网站| 国产美女主播视频一区| 欧美一区二区在线视频| 亚洲另类春色国产| 99久久er热在这里只有精品66| 日韩精品一区二区三区视频| 亚洲国产精品精华液网站| 不卡高清视频专区| 中国av一区二区三区| 国产一区二区三区免费观看| 777奇米四色成人影色区| 亚洲综合av网| 色综合视频在线观看| 欧美经典三级视频一区二区三区| 蜜臀精品一区二区三区在线观看 | 日韩毛片精品高清免费| 国产传媒欧美日韩成人| 久久欧美中文字幕| 九九九久久久精品| 日韩美女视频一区二区在线观看| 五月天激情综合| 欧美三级日韩三级国产三级| 亚洲精品国产高清久久伦理二区| 97se亚洲国产综合自在线观| 亚洲国产精华液网站w | 久久久久久久久久看片| 精品一区二区三区欧美| 精品入口麻豆88视频| 激情久久久久久久久久久久久久久久| 欧美一区二区三区播放老司机| 日韩精品福利网| 欧美一区二区三区视频免费播放 | 欧美视频一区在线| 亚洲国产另类精品专区| 欧美日韩国产综合久久| 亚洲aaa精品| 日韩欧美自拍偷拍| 久久aⅴ国产欧美74aaa| 精品国产sm最大网站免费看| 久久激情综合网| 国产性做久久久久久| 国产suv精品一区二区三区| 中文字幕精品一区二区三区精品| 99久久精品国产精品久久| 亚洲欧美国产三级| 欧美中文字幕亚洲一区二区va在线| 一卡二卡欧美日韩| 69成人精品免费视频| 久久成人18免费观看| 久久久久久久久久看片| 99re热视频这里只精品 | www.亚洲精品| 亚洲自拍偷拍av| 日韩一区二区三区四区| 国产一区三区三区| 中文字幕亚洲成人| 在线观看区一区二| 久久精品国产77777蜜臀| 亚洲国产高清不卡| 欧美性受xxxx| 久久国产欧美日韩精品| 久久久久久久综合| 色婷婷狠狠综合| 久久成人免费电影| 亚洲欧洲成人精品av97| 538在线一区二区精品国产| 精品在线播放午夜| 一色屋精品亚洲香蕉网站| 欧美精品久久99| 国产成人在线电影| 亚洲国产精品欧美一二99 | 免费成人结看片| 国产精品午夜电影| 欧美裸体bbwbbwbbw| 国产精品伊人色| 午夜精品123| 国产片一区二区| 欧美精品三级在线观看| 国产不卡免费视频| 亚洲福利电影网| 欧美国产一区二区在线观看| 欧美性受xxxx黑人xyx| 国产一区二区伦理| 亚洲va韩国va欧美va精品| 久久久不卡影院| 69av一区二区三区| 91网站在线播放| 精品一区二区影视| 亚洲精品一卡二卡| 久久综合一区二区| 51精品久久久久久久蜜臀| 国产成人av一区二区三区在线观看| 亚洲国产一区二区a毛片| 国产欧美一区二区精品性色| 欧美日韩国产免费| 从欧美一区二区三区| 免费看欧美女人艹b| 亚洲色图制服丝袜| 国产色91在线| 欧美一区二区三区思思人| 色www精品视频在线观看| 国产在线精品一区二区| 午夜精品久久久久| 亚洲精品伦理在线| 国产精品天美传媒| 国产日韩精品一区二区浪潮av| 91精品久久久久久蜜臀| 91黄视频在线观看| 不卡一区中文字幕| 国产suv精品一区二区883| 精品一区二区在线观看| 日韩电影在线观看一区| 亚洲一区精品在线| 国产精品久久久久久久久久久免费看 | 亚洲3atv精品一区二区三区| 成人欧美一区二区三区白人| 一区二区在线观看视频| 18欧美亚洲精品| 国产色婷婷亚洲99精品小说| 精品少妇一区二区三区日产乱码|