This project has retired. For details please refer to its Attic page.
API_080_SubscriptionTest xref
View Javadoc
1   /*
2    * Copyright 2001-2009 The Apache Software Foundation.
3    * 
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *      http://www.apache.org/licenses/LICENSE-2.0
8    * 
9    * Unless required by applicable law or agreed to in writing, software
10   * distributed under the License is distributed on an "AS IS" BASIS,
11   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12   * See the License for the specific language governing permissions and
13   * limitations under the License.
14   */
15  package org.apache.juddi.api.impl;
16  
17  import java.rmi.RemoteException;
18  
19  import org.apache.commons.configuration.ConfigurationException;
20  import org.apache.commons.logging.Log;
21  import org.apache.commons.logging.LogFactory;
22  import org.apache.juddi.Registry;
23  import org.apache.juddi.v3.tck.TckBindingTemplate;
24  import org.apache.juddi.v3.tck.TckBusiness;
25  import org.apache.juddi.v3.tck.TckBusinessService;
26  import org.apache.juddi.v3.tck.TckPublisher;
27  import org.apache.juddi.v3.tck.TckSecurity;
28  import org.apache.juddi.v3.tck.TckSubscription;
29  import org.apache.juddi.v3.tck.TckTModel;
30  import org.junit.AfterClass;
31  import org.junit.Assert;
32  import org.junit.BeforeClass;
33  import org.junit.Test;
34  
35  /**
36   * @author <a href="mailto:jfaath@apache.org">Jeff Faath</a>
37   * @author <a href="mailto:kstam@apache.org">Kurt T Stam</a>
38   */
39  public class API_080_SubscriptionTest 
40  {
41  	private static Log logger = LogFactory.getLog(API_080_SubscriptionTest.class);
42  
43  	private static API_010_PublisherTest api010 = new API_010_PublisherTest();
44  	private static TckTModel tckTModel = new TckTModel(new UDDIPublicationImpl(), new UDDIInquiryImpl());
45  	private static TckBusiness tckBusiness = new TckBusiness(new UDDIPublicationImpl(), new UDDIInquiryImpl());
46  	private static TckBusinessService tckBusinessService = new TckBusinessService(new UDDIPublicationImpl(), new UDDIInquiryImpl());
47  	private static TckBindingTemplate tckBindingTemplate = new TckBindingTemplate(new UDDIPublicationImpl(), new UDDIInquiryImpl());
48  	private static TckSubscription tckSubscription = new TckSubscription(new UDDISubscriptionImpl(), new UDDISecurityImpl(), new UDDIInquiryImpl());
49  
50  	private static String authInfoJoe = null;
51  	private static String authInfoSam = null;
52  	
53  	@BeforeClass
54  	public static void setup() throws ConfigurationException {
55  		Registry.start();
56                  logger.info("API_080_SubscriptionTest");
57  		logger.debug("Getting auth token..");
58  		try {
59  			api010.saveJoePublisher();
60  			authInfoJoe = TckSecurity.getAuthToken(new UDDISecurityImpl(), TckPublisher.getJoePublisherId(),  TckPublisher.getJoePassword());
61  
62  			api010.saveSamSyndicator();
63  			authInfoSam = TckSecurity.getAuthToken(new UDDISecurityImpl(), TckPublisher.getSamPublisherId(),  TckPublisher.getSamPassword());
64  
65  			String authInfoUDDI  = TckSecurity.getAuthToken(new UDDISecurityImpl(), TckPublisher.getUDDIPublisherId(),  TckPublisher.getUDDIPassword());
66  			tckTModel.saveUDDIPublisherTmodel(authInfoUDDI);
67  			tckTModel.saveTModels(authInfoUDDI, TckTModel.TMODELS_XML);
68  		} catch (RemoteException e) {
69  			logger.error(e.getMessage(), e);
70  			Assert.fail("Could not obtain authInfo token.");
71  		}
72                  
73  	}
74  
75  	@AfterClass
76  	public static void stopRegistry() throws ConfigurationException {
77                  tckTModel.deleteCreatedTModels(authInfoJoe);
78  		Registry.stop();
79  	}
80  	
81  	@Test
82  	public void joePublisher() {
83  		try {
84  			tckTModel.saveJoePublisherTmodel(authInfoJoe);
85  			tckBusiness.saveJoePublisherBusiness(authInfoJoe);
86  			tckBusinessService.saveJoePublisherService(authInfoJoe);
87  			tckBindingTemplate.saveJoePublisherBinding(authInfoJoe);
88  			tckSubscription.saveJoePublisherSubscription(authInfoJoe);
89  			tckSubscription.getJoePublisherSubscriptionResults(authInfoJoe);
90  		} catch (Exception e) {
91  			e.printStackTrace();
92  			Assert.fail();
93  		} catch (Throwable t) {
94  			t.printStackTrace();
95  			Assert.fail();
96  		}
97   		finally {
98  			tckSubscription.deleteJoePublisherSubscription(authInfoJoe);
99  			tckBindingTemplate.deleteJoePublisherBinding(authInfoJoe);
100 			tckBusinessService.deleteJoePublisherService(authInfoJoe);
101 			tckBusiness.deleteJoePublisherBusiness(authInfoJoe);
102 			tckTModel.deleteJoePublisherTmodel(authInfoJoe);
103 		}
104 		
105 	}
106 
107 	@Test
108 	public void samSyndicator() {
109 		try {
110 			tckTModel.saveSamSyndicatorTmodel(authInfoSam);
111 			tckBusiness.saveSamSyndicatorBusiness(authInfoSam);
112 			tckBusinessService.saveSamSyndicatorService(authInfoSam);
113 			tckSubscription.saveSamSyndicatorSubscription(authInfoSam);
114 			tckSubscription.getSamSyndicatorSubscriptionResults(authInfoSam);
115 		} 
116 		finally {
117 			tckSubscription.deleteSamSyndicatorSubscription(authInfoSam);
118 			tckBusinessService.deleteSamSyndicatorService(authInfoSam);
119 			tckBusiness.deleteSamSyndicatorBusiness(authInfoSam);
120 			tckTModel.deleteSamSyndicatorTmodel(authInfoSam);
121 		}
122 		
123 	}
124 
125 	@Test
126 	public void samSyndicatorWithChunkingOnFind() {
127 		try {
128 			tckTModel.saveSamSyndicatorTmodel(authInfoSam);
129 			tckBusiness.saveSamSyndicatorBusiness(authInfoSam);
130 			tckBusinessService.saveSamSyndicatorService(authInfoSam);
131 			tckSubscription.saveSamSyndicatorSubscriptionWithChunkingOnFind(authInfoSam);
132 			tckSubscription.getSamSyndicatorSubscriptionResultsWithChunkingOnFind(authInfoSam);
133 		} 
134 		finally {
135 			tckSubscription.deleteSamSyndicatorSubscriptionWithChunkingOnFind(authInfoSam);
136 			tckBusinessService.deleteSamSyndicatorService(authInfoSam);
137 			tckBusiness.deleteSamSyndicatorBusiness(authInfoSam);
138 			tckTModel.deleteSamSyndicatorTmodel(authInfoSam);
139 		}
140 		
141 	}
142 	
143 	@Test
144 	public void samSyndicatorWithChunkingOnGet() {
145 		try {
146 			tckTModel.saveSamSyndicatorTmodel(authInfoSam);
147 			tckBusiness.saveSamSyndicatorBusiness(authInfoSam);
148 			tckBusinessService.saveSamSyndicatorService(authInfoSam);
149 			tckSubscription.saveSamSyndicatorSubscriptionWithChunkingOnGet(authInfoSam);
150 			tckSubscription.getSamSyndicatorSubscriptionResultsWithChunkingOnGet(authInfoSam);
151 		} 
152 		finally {
153 			tckSubscription.deleteSamSyndicatorSubscriptionWithChunkingOnGet(authInfoSam);
154 			tckBusinessService.deleteSamSyndicatorService(authInfoSam);
155 			tckBusiness.deleteSamSyndicatorBusiness(authInfoSam);
156 			tckTModel.deleteSamSyndicatorTmodel(authInfoSam);
157 		}
158 		
159 	}
160 	
161 }