Project Report: fawkez

Packagesummary org.jcoderz.commons.types.samples

org.jcoderz.commons.types.samples.CopyValueSampleObjectTest

LineHitsNoteSource
1  /*
2   * $Id: CopyValueSampleObjectTest.java 1539 2009-07-24 12:49:21Z amandel $
3   *
4   * Copyright 2008, The jCoderZ.org Project. All rights reserved.
5   *
6   * Redistribution and use in source and binary forms, with or without
7   * modification, are permitted provided that the following conditions are
8   * met:
9   *
10   *    * Redistributions of source code must retain the above copyright
11   *      notice, this list of conditions and the following disclaimer.
12   *    * Redistributions in binary form must reproduce the above
13   *      copyright notice, this list of conditions and the following
14   *      disclaimer in the documentation and/or other materials
15   *      provided with the distribution.
16   *    * Neither the name of the jCoderZ.org Project nor the names of
17   *      its contributors may be used to endorse or promote products
18   *      derived from this software without specific prior written
19   *      permission.
20   *
21   * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS" AND
22   * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23   * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
24   * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS
25   * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26   * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27   * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
28   * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
29   * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
30   * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
31   * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32   */
33  package org.jcoderz.commons.types.samples;
34  
35  import java.util.Date;
36  
37  import junit.framework.TestCase;
38  
39  /**
40   * Test class for {@link CopyValueSampleObject}.
41   * @author Andreas Mandel
42   */
43100 public class CopyValueSampleObjectTest
44      extends TestCase
45  {
46      /** Check value modifications on a cloned object. */
47      public void testClonedValue ()
48      {
49100         final Date date = new Date();
50100         final BarValueObject bar
51              = new BarValueObject(org.jcoderz.commons.types.Date.now());
52100         final CopyValueSampleObject test = new CopyValueSampleObject(date, bar);
53  
54100         assertNotSame("Mutable object should have been cloned.",
55              date, test.getModificationDate());
56  
57100         date.setTime(0);
5875(1)        assertFalse("Modification of date must not be propagated.",
59              test.getModificationDate().getTime() == date.getTime());
60100     }
61  
62      /** Check value modifications on a object copied via copy constructor. */
63      public void testCopyConstructorValue ()
64      {
65100         final Date date = new Date();
66100         final BarValueObject bar
67              = new BarValueObject(org.jcoderz.commons.types.Date.now());
68100         bar.setId(0);
69100         final CopyValueSampleObject test = new CopyValueSampleObject(date, bar);
70  
71100         assertNotSame("Mutable object should have been cloned.",
72              bar, test.getSampleBar());
73  
74100         bar.setId(1);
7575(2)        assertFalse("Modification of bar must not be propagated.",
76              test.getSampleBar().getId() == bar.getId());
77100     }
78  
79 (3)    /** Check value modifications on a cloned object which is initialized with null. */
80      public void testClonedValueNullInit ()
81      {
82100         final Date date = new Date();
83100         final BarValueObject bar
84              = new BarValueObject(org.jcoderz.commons.types.Date.now());
85100         final CopyValueSampleObject test = new CopyValueSampleObject(null, bar);
86100         test.setModificationDate(date);
87100(4)        assertEquals("Object should be set and equal.", date, test.getModificationDate());
88100     }
89  }

Findings in this File

c (1) 58 : 9 Use assertSame(x, y) instead of assertTrue(x==y), or assertNotSame(x,y) vs assertFalse(x==y)
c (2) 75 : 9 Use assertSame(x, y) instead of assertTrue(x==y), or assertNotSame(x,y) vs assertFalse(x==y)
c (3) 79 : 0 Line is longer than 80 characters.
c (4) 87 : 0 Line is longer than 80 characters.