/* XOWA: the XOWA Offline Wiki Application Copyright (C) 2012 gnosygnu@gmail.com This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . */ package gplx.fsdb; import gplx.*; import org.junit.*; public class Binary_search__tst { private Binary_search__fxt fxt = new Binary_search__fxt(); @Test public void Basic() { fxt.Init_ary("", "e", "j", "o", "t", "y"); fxt.Test_binary_search("a", 0); fxt.Test_binary_search("f", 1); fxt.Test_binary_search("k", 2); fxt.Test_binary_search("p", 3); fxt.Test_binary_search("u", 4); fxt.Test_binary_search("z", 5); } @Test public void One() { fxt.Init_ary(""); fxt.Test_binary_search("a", 0); } } class Binary_search__fxt { public void Init_ary(String... v) { int ary_len = v.length; ary = new String_obj_val[ary_len]; for (int i = 0; i < ary_len; i++) ary[i] = String_obj_val.new_(v[i]); } private String_obj_val[] ary; public void Test_binary_search(String val, int expd) { int actl = Binary_search_.Search(ary, ary.length, String_obj_val.new_(val)); Tfds.Eq(expd, actl, val); } }