1 package org.apache.commons.beanutils2;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 import static org.apache.commons.beanutils2.BeanUtils.on;
21 import static org.junit.Assert.assertFalse;
22 import static org.junit.Assert.assertTrue;
23
24 import org.apache.commons.beanutils2.testbeans.TestBean;
25 import org.junit.Test;
26
27 public class IsWritableTestCase
28 {
29
30 @Test( expected = NullPointerException.class )
31 public void isWritableNull()
32 throws Exception
33 {
34 on( TestBean.class ).getProperties().isWritable( null );
35 }
36
37 @Test( expected = NoSuchPropertyException.class )
38 public void isWritbleUnknown()
39 throws Exception
40 {
41 on( TestBean.class ).getProperties().isWritable( "unknown" );
42 }
43
44 @Test
45 public void isWritbleIntProperty()
46 throws Exception
47 {
48 assertTrue( "isWritable returned false for a read/write int property!",
49 on( TestBean.class ).getProperties().isWritable( "intProperty" ) );
50 }
51
52 @Test
53 public void isWritbleIntArray()
54 throws Exception
55 {
56 assertTrue( "isWritable returned false for a read/write array property!",
57 on( TestBean.class ).getProperties().isWritable( "intArray" ) );
58 }
59
60 @Test
61 public void isWritableIntIndexed()
62 throws Exception
63 {
64 assertTrue( "isWritable returned false for a read/write indexed property!",
65 on( TestBean.class ).getProperties().isWritable( "intIndexed" ) );
66 }
67
68 @Test
69 public void isWritableMappedIntProperty()
70 throws Exception
71 {
72 assertTrue( "isWritable returned false for a read/write mapped property!",
73 on( TestBean.class ).getProperties().isWritable( "mappedIntProperty" ) );
74 }
75
76 @Test
77 public void isWritbleMapProperty()
78 throws Exception
79 {
80 assertTrue( "isWritable returned false for a read/write map property!",
81 on( TestBean.class ).getProperties().isWritable( "mapProperty" ) );
82 }
83
84 @Test
85 public void isWritableReadOnlyProperty()
86 throws Exception
87 {
88 assertFalse( "isWriteable returned true for a read only property!",
89 on( TestBean.class ).getProperties().isWritable( "readOnlyProperty" ) );
90 }
91
92 @Test
93 public void isWritableWriteOnlyProperty()
94 throws Exception
95 {
96 assertTrue( "isWritable returned false for a write only property!",
97 on( TestBean.class ).getProperties().isWritable( "writeOnlyProperty" ) );
98 }
99
100 }