|
What this is
Other links
The source code/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2003 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.api.registry.mergedctx; import org.netbeans.api.registry.AttributeTest; import org.netbeans.api.registry.Context; import org.netbeans.api.registry.ContextException; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.HashSet; public class ReusedAttributeTest extends AttributeTest { private Context rootCtx; protected Context getRootContext() { if (rootCtx == null) rootCtx = SetUpUtils.getSimpleContext(super.getRootContext()); return rootCtx; } public ReusedAttributeTest(String name) { super(name); } protected void setUp() throws Exception { rootCtx = null; super.setUp(); getRootContext(); } public void testFlipFlap () throws ContextException { Context ctx = getRootContext().createSubcontext("test");; final String bindingName = "myBindingName"; final String bindingValue = "myValue"; final String attrName = "myAttrName"; final String attrValue = "myValue"; final String defAttrValue = "defBindingValue"; Object tmpObj; ctx.putString(bindingName, bindingValue); assertEquals(bindingValue, ctx.getString(bindingName,"")); ctx.setAttribute(bindingName, attrName, attrValue); tmpObj = ctx.getAttribute(bindingName, attrName, defAttrValue); assertEquals(attrValue, tmpObj); ctx.setAttribute(bindingName, attrName, null); tmpObj = ctx.getAttribute(bindingName, attrName, defAttrValue); assertEquals(defAttrValue, tmpObj); ctx.setAttribute(bindingName, attrName, attrValue); tmpObj = ctx.getAttribute(bindingName, attrName, defAttrValue); assertEquals(attrValue, tmpObj); ctx.setAttribute(bindingName, attrName, null); tmpObj = ctx.getAttribute(bindingName, attrName, defAttrValue); assertEquals(defAttrValue, tmpObj); } public void testCopyAttribs () throws ContextException { Context rCtx = SetUpUtils.getSubctx2(); String attribs = "cattr1"; String binding = "cbinding"; rCtx.putString(binding, binding); rCtx.setAttribute(binding, attribs, attribs); assertEquals(attribs, rCtx.getAttribute(binding, attribs, "defValue")); assertEquals(attribs, getRootContext().getAttribute(binding, attribs, "defValue")); /*important tests*/ getRootContext().putString(binding, binding); assertEquals(attribs, getRootContext().getAttribute(binding, attribs, "defValue")); rCtx.putString(binding, null); assertEquals(attribs, getRootContext().getAttribute(binding, attribs, "defValue")); } public void testAttribsForCtx () throws ContextException { Context ctx1 = SetUpUtils.getSubctx1(); Context ctx2 = SetUpUtils.getSubctx2(); Context ctx3 = SetUpUtils.getSubctx3(); String[] attribs = new String[] {"mattr1","mattr2","mattr3"}; ctx1.setAttribute(null,attribs[0],attribs[0]); ctx2.setAttribute(null,attribs[1],attribs[1]); ctx3.setAttribute(null,attribs[2],attribs[2]); Context ctx = getRootContext(); Collection original = new HashSet (Arrays.asList(attribs)); Collection names = ctx.getAttributeNames(null); original.removeAll(names); assertTrue (original.size() == 0); assertEquals(attribs[0], ctx.getAttribute(null, attribs[0], "defValue")); assertEquals(attribs[1], ctx.getAttribute(null, attribs[1], "defValue")); assertEquals(attribs[2], ctx.getAttribute(null, attribs[2], "defValue")); } public void testAttribsForBinding () throws ContextException { Context ctx1 = SetUpUtils.getSubctx1(); Context ctx2 = SetUpUtils.getSubctx2(); Context ctx3 = SetUpUtils.getSubctx3(); String[] attribs = new String[] {"battr1","battr2","battr3"}; String binding = "bbinding"; ctx1.putString(binding, binding); ctx2.putString(binding, binding); ctx3.putString(binding, binding); ctx1.setAttribute(binding,attribs[0],attribs[0]); ctx2.setAttribute(binding,attribs[1],attribs[1]); ctx3.setAttribute(binding,attribs[2],attribs[2]); Context ctx = getRootContext(); Collection original = new ArrayList(); original.add(attribs[0]); Collection names = ctx.getAttributeNames(binding); original.removeAll(names); assertTrue(names.size() == 1); assertTrue (original.size() == 0); assertEquals(attribs[0], ctx.getAttribute(binding, attribs[0], "defValue")); assertEquals("defValue", ctx.getAttribute(binding, attribs[1], "defValue")); assertEquals("defValue", ctx.getAttribute(binding, attribs[2], "defValue")); } } |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.