This project has retired. For details please refer to its Attic page.
UDDI_050_BindingTemplateIntegrationTest 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.v3.tck;
16  
17  import javax.xml.ws.BindingProvider;
18  import org.apache.commons.configuration.ConfigurationException;
19  import org.apache.commons.logging.Log;
20  import org.apache.commons.logging.LogFactory;
21  import org.apache.juddi.v3.client.config.UDDIClient;
22  import org.apache.juddi.v3.client.transport.Transport;
23  import org.junit.AfterClass;
24  import org.junit.Assert;
25  import org.junit.Assume;
26  import org.junit.BeforeClass;
27  import org.junit.Test;
28  import org.uddi.v3_service.UDDIInquiryPortType;
29  import org.uddi.v3_service.UDDIPublicationPortType;
30  import org.uddi.v3_service.UDDISecurityPortType;
31  
32  /**
33   * @author <a href="mailto:jfaath@apache.org">Jeff Faath</a>
34   * @author <a href="mailto:kstam@apache.org">Kurt T Stam</a>
35   * @author <a href="mailto:alexoree@apache.org">Alex O'Ree</a>
36   */
37  public class UDDI_050_BindingTemplateIntegrationTest {
38  
39          private static Log logger = LogFactory.getLog(UDDI_050_BindingTemplateIntegrationTest.class);
40          private static TckTModel tckTModel = null;
41          private static TckBusiness tckBusiness = null;
42          private static TckBusinessService tckBusinessService = null;
43          private static TckBindingTemplate tckBindingTemplate = null;
44          private static TckFindEntity tckFindEntity = null;
45          private static String authInfoJoe = null;
46          private static UDDIClient manager;
47  
48          @AfterClass
49          public static void stopManager() throws ConfigurationException {
50               if (!TckPublisher.isEnabled()) return;
51                  tckTModel.deleteCreatedTModels(authInfoJoe);
52                  
53                  manager.stop();
54          }
55  
56          @BeforeClass
57          public static void startManager() throws ConfigurationException {
58               if (!TckPublisher.isEnabled()) return;
59                  manager = new UDDIClient();
60                  manager.start();
61  
62                  logger.debug("Getting auth tokens..");
63                  try {
64                          Transport transport = manager.getTransport("uddiv3");
65                          UDDISecurityPortType security = transport.getUDDISecurityService();
66                          UDDIPublicationPortType publication = transport.getUDDIPublishService();
67                          UDDIInquiryPortType inquiry = transport.getUDDIInquiryService();
68                          authInfoJoe = TckSecurity.getAuthToken(security, TckPublisher.getJoePublisherId(), TckPublisher.getJoePassword());
69                          //Assert.assertNotNull(authInfoJoe);
70                          if (!TckPublisher.isUDDIAuthMode()) {
71                                  TckSecurity.setCredentials((BindingProvider) publication, TckPublisher.getJoePublisherId(), TckPublisher.getJoePassword());
72                                  TckSecurity.setCredentials((BindingProvider) inquiry, TckPublisher.getJoePublisherId(), TckPublisher.getJoePassword());
73                          }
74  
75  
76                          tckTModel = new TckTModel(publication, inquiry);
77                          tckBusiness = new TckBusiness(publication, inquiry);
78                          tckBusinessService = new TckBusinessService(publication, inquiry);
79                          tckBindingTemplate = new TckBindingTemplate(publication, inquiry);
80                          tckFindEntity = new TckFindEntity(inquiry);
81  
82  
83                          transport = manager.getTransport("uddiv3");
84                          security = transport.getUDDISecurityService();
85                          publication = transport.getUDDIPublishService();
86                          inquiry = transport.getUDDIInquiryService();
87                          String authInfoUDDI = TckSecurity.getAuthToken(security, TckPublisher.getUDDIPublisherId(), TckPublisher.getUDDIPassword());
88                          //Assert.assertNotNull(authInfoJoe);
89                          if (!TckPublisher.isUDDIAuthMode()) {
90                                  TckSecurity.setCredentials((BindingProvider) publication, TckPublisher.getUDDIPublisherId(), TckPublisher.getUDDIPassword());
91                                  TckSecurity.setCredentials((BindingProvider) inquiry, TckPublisher.getUDDIPublisherId(), TckPublisher.getUDDIPassword());
92                          }
93  
94  
95                          tckTModel.saveUDDIPublisherTmodel(authInfoUDDI);
96                          tckTModel.saveTModels(authInfoUDDI, TckTModel.TMODELS_XML);
97                  } catch (Exception e) {
98                          logger.error(e.getMessage(), e);
99                          Assert.fail("Could not obtain authInfo token.");
100                 }
101                 JUDDI_300_MultiNodeIntegrationTest.testSetupReplicationConfig();
102         }
103 
104         @Test
105         public void joepublisher() {
106              Assume.assumeTrue(TckPublisher.isEnabled());
107                 try {
108                         tckTModel.saveJoePublisherTmodel(authInfoJoe);
109                         tckBusiness.saveJoePublisherBusiness(authInfoJoe);
110                         tckBusinessService.saveJoePublisherService(authInfoJoe);
111                         tckBindingTemplate.saveJoePublisherBinding(authInfoJoe);
112                         tckBindingTemplate.deleteJoePublisherBinding(authInfoJoe);
113                 } finally {
114                         tckBusinessService.deleteJoePublisherService(authInfoJoe);
115                         tckBusiness.deleteJoePublisherBusiness(authInfoJoe);
116                         tckTModel.deleteJoePublisherTmodel(authInfoJoe);
117                 }
118         }
119 
120         @Test
121         public void findService() {
122              Assume.assumeTrue(TckPublisher.isEnabled());
123                 try {
124                         tckTModel.saveJoePublisherTmodel(authInfoJoe);
125                         tckBusiness.saveJoePublisherBusiness(authInfoJoe);
126                         tckBusinessService.saveJoePublisherService(authInfoJoe);
127                         tckBindingTemplate.saveJoePublisherBinding(authInfoJoe);
128                         tckBindingTemplate.deleteBinding(authInfoJoe, "uddi:uddi.joepublisher.com:bindingone");
129                         String serviceKey = tckFindEntity.findService(null);
130                         tckFindEntity.findServiceDetail(serviceKey);
131 
132                         tckBindingTemplate.saveJoePublisherBinding(authInfoJoe);
133 
134                         serviceKey = tckFindEntity.findService(null);
135                         tckFindEntity.findServiceDetail(serviceKey);
136 
137                         tckBindingTemplate.deleteJoePublisherBinding(authInfoJoe);
138 
139                         tckFindEntity.findService(null);
140                         tckFindEntity.findServiceDetail(serviceKey);
141                 } finally {
142                         tckBusinessService.deleteJoePublisherService(authInfoJoe);
143                         tckBusiness.deleteJoePublisherBusiness(authInfoJoe);
144                         tckTModel.deleteJoePublisherTmodel(authInfoJoe);
145                 }
146         }
147 }