/* * Copyright 1999-2011 Alibaba Group. * * Licensed 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 com.alibaba.dubbo.registry; /** * @author ding.lid */ public class RegistryTestSupport { /*public static <T> void assertEqualsIgnoreOrde(Collection<T> expected, Collection<T> actual) { Set<T> expectedSet; if (expected instanceof Set) { expectedSet = (Set<T>) expected; } else { expectedSet = new HashSet<T>(expected); } Set<T> actualSet; if (actual instanceof Set) { actualSet = (Set<T>) actual; } else { actualSet = new HashSet<T>(actual); } Assert.assertEquals(expectedSet, actualSet); } public static final String member_service_name = "com.alibaba.morgan.MemberService"; public static final Map<String, String> member_urls1; static { Map<String, String> m = new HashMap<String, String>(); m.put("remote://10.20.130.230:9090/memberService", "version=1.0.0"); member_urls1 = Collections.unmodifiableMap(m); } public static final Map<String, String> member_urls2; static { Map<String, String> m = new HashMap<String, String>(); m.put("remote://11.11.11.11:9090/memberService", "version=1.0.0"); m.put("remote://22.22.22.22:9090/memberService", "version=1.0.0"); m.put("remote://33.33.33.33:9090/memberService", "version=1.0.0"); member_urls2 = Collections.unmodifiableMap(m); } public static final Map<String, String> member_urls3; static { Map<String, String> m = new HashMap<String, String>(); m.put("remote://44.44.44.44:9090/memberService", "version=1.0.0"); member_urls3 = Collections.unmodifiableMap(m); } public static final String xxx_service_name = "com.alibaba.xxx.XxxService"; public static final Map<String, String> xxx_urls1; static { Map<String, String> m = new HashMap<String, String>(); m.put("remote://11.11.11.11:9090/xxxService", "version=1.0.0"); m.put("remote://22.22.22.22:9090/xxxService", "version=1.0.0"); xxx_urls1 = Collections.unmodifiableMap(m); } public static void registerCheck(AbstractRegistry registry) { { List<URL> registeredList = registry .getRegistered("com.alibaba.morgan.MemberService"); assertEquals(0, registeredList.size()); Map<String, Map<String, String>> registeredMap = registry.getRegistered(); assertEquals(0, registeredMap.size()); } { for (Map.Entry<String, String> entry : member_urls1.entrySet()) { registry.register(member_service_name, entry.getKey(), entry.getValue()); } Map<String, String> registered = registry.getRegistered(member_service_name); assertEquals(1, registered.size()); assertNotSame(member_urls1, registered); assertEquals(member_urls1, registered); Map<String, Map<String, String>> registeredMap = registry.getRegistered(); assertEquals(1, registeredMap.size()); assertTrue(registeredMap.containsKey(member_service_name)); registered = registeredMap.get(member_service_name); assertEquals(1, registered.size()); assertNotSame(member_urls1, registered); assertEquals(member_urls1, registered); } { registry.register(member_service_name, member_urls2); Map<String, String> registered = registry.getRegistered(member_service_name); final Map<String, String> urls = new HashMap<String, String>(); urls.putAll(member_urls1); urls.putAll(member_urls2); assertEquals(urls, registered); Map<String, Map<String, String>> registeredMap = registry.getRegistered(); assertEquals(1, registeredMap.size()); assertTrue(registeredMap.containsKey(member_service_name)); registered = registeredMap.get(member_service_name); assertEquals(urls, registered); } { Map<String, Map<String, String>> services = new HashMap<String, Map<String, String>>(); services.put(member_service_name, member_urls3); services.put(xxx_service_name, xxx_urls1); registry.register(services); final Map<String, String> urls = new HashMap<String, String>(); urls.putAll(member_urls1); urls.putAll(member_urls2); urls.putAll(member_urls3); { Map<String, String> registered = registry.getRegistered(member_service_name); assertEquals(urls, registered); registered = registry.getRegistered(xxx_service_name); assertEquals(xxx_urls1, registered); } { Map<String, Map<String, String>> registeredMap = registry.getRegistered(); assertEquals(2, registeredMap.size()); assertTrue(registeredMap.containsKey(member_service_name)); assertTrue(registeredMap.containsKey(xxx_service_name)); Map<String, String> registered = registeredMap.get(member_service_name); assertEquals(urls, registered); registered = registeredMap.get(xxx_service_name); assertEquals(xxx_urls1, registered); } } } public static void subscribeCheck(AbstractRegistry registry, NotificationListener mockNotifyListener) { String subscribed = registry.getSubscribed("com.alibaba.morgan.MemberService"); assertNull(subscribed); Map<String, String> subscribedMap = registry.getSubscribed(); assertEquals(0, subscribedMap.size()); // query允许为null registry.subscribe("com.alibaba.xxx.XxxService", (String) null, mockNotifyListener); subscribed = registry.getSubscribed("com.alibaba.xxx.XxxService"); assertEquals("", subscribed); subscribedMap = registry.getSubscribed(); assertEquals(1, subscribedMap.size()); assertTrue(subscribedMap.containsKey("com.alibaba.xxx.XxxService")); assertEquals("", subscribedMap.get("com.alibaba.xxx.XxxService")); registry.subscribe("com.alibaba.empty.EmptyService", "", mockNotifyListener); // query允许为空 subscribed = registry.getSubscribed("com.alibaba.empty.EmptyService"); assertEquals("", subscribed); subscribedMap = registry.getSubscribed(); assertEquals(2, subscribedMap.size()); assertTrue(subscribedMap.containsKey("com.alibaba.empty.EmptyService")); assertEquals("", subscribedMap.get("com.alibaba.empty.EmptyService")); // 多项值的Query registry.subscribe("com.alibaba.morgan.MemberService", "dog=bad,cat=god", mockNotifyListener); subscribed = registry.getSubscribed("com.alibaba.morgan.MemberService"); assertEquals("dog=bad,cat=god", subscribed); subscribedMap = registry.getSubscribed(); assertEquals(3, subscribedMap.size()); String s = subscribedMap.get("com.alibaba.morgan.MemberService"); assertEquals("dog=bad,cat=god", s); registry.subscribe("com.alibaba.complex.ComplexService", "version=1.0.0&application=kylin&methods=findPerson,findVAccount", mockNotifyListener); subscribedMap = registry.getSubscribed(); assertEquals(4, subscribedMap.size()); String q = subscribedMap.get("com.alibaba.complex.ComplexService"); assertEquals("version=1.0.0&application=kylin&methods=findPerson,findVAccount", q); }*/ public void testDummy() { } }