1   /*
2    * Copyright 2002-2006 the original author or authors.
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License"); you may not
5    * use this file except in compliance with the License. You may obtain a copy of
6    * the License at
7    *
8    * http://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
12   * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13   * License for the specific language governing permissions and limitations under
14   * the License.
15   */
16  package org.springframework.binding.support;
17  
18  import org.springframework.binding.form.FormModel;
19  import org.springframework.binding.form.support.DefaultFormModel;
20  import org.springframework.binding.form.support.UserMetadata;
21  import org.springframework.richclient.test.SpringRichTestCase;
22  
23  /**
24   * @author Mathias Broekelmann
25   * 
26   */
27  public class ProtectedFieldTests extends SpringRichTestCase {
28  
29      public static class AnnotatedTestBean {
30          private String password;
31  
32          @ProtectedField
33          public String getPassword() {
34              return password;
35          }
36  
37          public void setPassword(String password) {
38              this.password = password;
39          }
40  
41      }
42  
43      public void testAnnotation() throws Exception {
44          FormModel model = new DefaultFormModel(new AnnotationAwareBeanPropertyAccessStrategy(new AnnotatedTestBean()));
45          assertEquals(true, model.getFieldMetadata("password").getUserMetadata(UserMetadata.PROTECTED_FIELD));
46      }
47  }