~ubuntu-branches/ubuntu/utopic/libjaudiotagger-java/utopic-proposed

« back to all changes in this revision

Viewing changes to srctest/org/jaudiotagger/audio/asf/data/ContentDescriptionTest.java

  • Committer: Bazaar Package Importer
  • Author(s): Damien Raude-Morvan
  • Date: 2009-12-30 21:58:38 UTC
  • mfrom: (3.1.3 sid)
  • Revision ID: james.westby@ubuntu.com-20091230215838-113vy313ak2ap51i
Tags: 2.0.0-1
* New upstream release
* Update my email address
* Bump debhelper version to >= 7
* Bump Standards-Version to 3.8.3 (no changes needed)
* Depends on java5-runtime-headless as we build java5 bytecode
* Maven POMs:
  - Add a Build-Depends-Indep dependency on maven-repo-helper
  - Use mh_installpoms and mh_installjar to install the POM and the jar to the
    Maven repository

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
package org.jaudiotagger.audio.asf.data;
 
2
 
 
3
import org.jaudiotagger.logging.ErrorMessage;
 
4
 
 
5
import java.math.BigInteger;
 
6
import java.util.ArrayList;
 
7
import java.util.List;
 
8
 
 
9
/**
 
10
 * Tests the content description container.
 
11
 * 
 
12
 * @author Christian Laireiter
 
13
 */
 
14
public class ContentDescriptionTest extends
 
15
        AbstractMetadataContainer<ContentDescription> {
 
16
 
 
17
    /**
 
18
     * {@inheritDoc}
 
19
     */
 
20
    @Override
 
21
    protected ContentDescription createChunk(long pos, BigInteger size) {
 
22
        return new ContentDescription(pos, size);
 
23
    }
 
24
 
 
25
    /**
 
26
     * {@inheritDoc}
 
27
     */
 
28
    @Override
 
29
    protected MetadataDescriptor[] createSupportedDescriptors(
 
30
            ContentDescription container) {
 
31
        final List<MetadataDescriptor> result = new ArrayList<MetadataDescriptor>();
 
32
        MetadataDescriptor desc = new MetadataDescriptor(
 
33
                ContentDescription.KEY_AUTHOR);
 
34
        desc.setStringValue("author");
 
35
        result.add(desc);
 
36
        desc = new MetadataDescriptor(ContentDescription.KEY_COPYRIGHT);
 
37
        desc.setStringValue("copyright");
 
38
        result.add(desc);
 
39
        desc = new MetadataDescriptor(ContentDescription.KEY_DESCRIPTION);
 
40
        desc.setStringValue("description");
 
41
        result.add(desc);
 
42
        desc = new MetadataDescriptor(ContentDescription.KEY_RATING);
 
43
        desc.setStringValue("rating");
 
44
        result.add(desc);
 
45
        desc = new MetadataDescriptor(ContentDescription.KEY_TITLE);
 
46
        desc.setStringValue("title");
 
47
        result.add(desc);
 
48
        return result.toArray(new MetadataDescriptor[result.size()]);
 
49
    }
 
50
 
 
51
    /**
 
52
     * {@inheritDoc}
 
53
     */
 
54
    @Override
 
55
    protected ContentDescription[] createTestContainers() {
 
56
        return new ContentDescription[] { new ContentDescription() };
 
57
    }
 
58
 
 
59
    /**
 
60
     * Test method for
 
61
     * {@link org.jaudiotagger.audio.asf.data.ContentDescription#setAuthor(java.lang.String)}
 
62
     * .
 
63
     */
 
64
    public void testSetAuthor() {
 
65
        final ContentDescription chunk = createChunk(0, BigInteger.ZERO);
 
66
        assertTrue(chunk.isEmpty());
 
67
        assertEquals("", chunk.getAuthor());
 
68
        chunk.setAuthor("");
 
69
        assertTrue(chunk.isEmpty());
 
70
        chunk.setAuthor("author");
 
71
        assertEquals("author", chunk.getAuthor());
 
72
        assertFalse(chunk.isEmpty());
 
73
        try {
 
74
            chunk.setAuthor(AbstractChunk
 
75
                    .createAString(MetadataDescriptor.WORD_MAXVALUE + 1));
 
76
            fail("Exception expected");
 
77
        } catch (IllegalArgumentException iae) {
 
78
            assertErrorMessage(ErrorMessage.WMA_LENGTH_OF_DATA_IS_TOO_LARGE,
 
79
                    iae.getMessage());
 
80
        }
 
81
    }
 
82
 
 
83
    /**
 
84
     * Test method for
 
85
     * {@link org.jaudiotagger.audio.asf.data.ContentDescription#setComment(java.lang.String)}
 
86
     * .
 
87
     */
 
88
    public void testSetComment() {
 
89
        final ContentDescription chunk = createChunk(0, BigInteger.ZERO);
 
90
        assertTrue(chunk.isEmpty());
 
91
        assertEquals("", chunk.getComment());
 
92
        chunk.setComment("");
 
93
        assertTrue(chunk.isEmpty());
 
94
        chunk.setComment("comment");
 
95
        assertEquals("comment", chunk.getComment());
 
96
        assertFalse(chunk.isEmpty());
 
97
        try {
 
98
            chunk.setComment(AbstractChunk
 
99
                    .createAString(MetadataDescriptor.WORD_MAXVALUE + 1));
 
100
            fail("Exception expected");
 
101
        } catch (IllegalArgumentException iae) {
 
102
            assertErrorMessage(ErrorMessage.WMA_LENGTH_OF_DATA_IS_TOO_LARGE,
 
103
                    iae.getMessage());
 
104
        }
 
105
    }
 
106
 
 
107
    /**
 
108
     * Test method for
 
109
     * {@link org.jaudiotagger.audio.asf.data.ContentDescription#setCopyright(java.lang.String)}
 
110
     * .
 
111
     */
 
112
    public void testSetCopyRight() {
 
113
        final ContentDescription chunk = createChunk(0, BigInteger.ZERO);
 
114
        assertTrue(chunk.isEmpty());
 
115
        assertEquals("", chunk.getCopyRight());
 
116
        chunk.setCopyright("");
 
117
        assertTrue(chunk.isEmpty());
 
118
        chunk.setCopyright("copyright");
 
119
        assertEquals("copyright", chunk.getCopyRight());
 
120
        assertFalse(chunk.isEmpty());
 
121
        try {
 
122
            chunk.setCopyright(AbstractChunk
 
123
                    .createAString(MetadataDescriptor.WORD_MAXVALUE + 1));
 
124
            fail("Exception expected");
 
125
        } catch (IllegalArgumentException iae) {
 
126
            assertErrorMessage(ErrorMessage.WMA_LENGTH_OF_DATA_IS_TOO_LARGE,
 
127
                    iae.getMessage());
 
128
        }
 
129
    }
 
130
 
 
131
    /**
 
132
     * Test method for
 
133
     * {@link org.jaudiotagger.audio.asf.data.ContentDescription#setRating(java.lang.String)}
 
134
     * .
 
135
     */
 
136
    public void testSetRating() {
 
137
        final ContentDescription chunk = createChunk(0, BigInteger.ZERO);
 
138
        assertTrue(chunk.isEmpty());
 
139
        assertEquals("", chunk.getRating());
 
140
        chunk.setRating("");
 
141
        assertTrue(chunk.isEmpty());
 
142
        chunk.setRating("rating");
 
143
        assertEquals("rating", chunk.getRating());
 
144
        assertFalse(chunk.isEmpty());
 
145
        try {
 
146
            chunk.setRating(AbstractChunk
 
147
                    .createAString(MetadataDescriptor.WORD_MAXVALUE + 1));
 
148
            fail("Exception expected");
 
149
        } catch (IllegalArgumentException iae) {
 
150
            assertErrorMessage(ErrorMessage.WMA_LENGTH_OF_DATA_IS_TOO_LARGE,
 
151
                    iae.getMessage());
 
152
        }
 
153
    }
 
154
 
 
155
    /**
 
156
     * Test method for
 
157
     * {@link org.jaudiotagger.audio.asf.data.ContentDescription#setTitle(java.lang.String)}
 
158
     * .
 
159
     */
 
160
    public void testSetTitle() {
 
161
        final ContentDescription chunk = createChunk(0, BigInteger.ZERO);
 
162
        assertTrue(chunk.isEmpty());
 
163
        assertEquals("", chunk.getTitle());
 
164
        chunk.setTitle("");
 
165
        assertTrue(chunk.isEmpty());
 
166
        chunk.setTitle("title");
 
167
        assertEquals("title", chunk.getTitle());
 
168
        assertFalse(chunk.isEmpty());
 
169
        try {
 
170
            chunk.setTitle(AbstractChunk
 
171
                    .createAString(MetadataDescriptor.WORD_MAXVALUE + 1));
 
172
            fail("Exception expected");
 
173
        } catch (IllegalArgumentException iae) {
 
174
            assertErrorMessage(ErrorMessage.WMA_LENGTH_OF_DATA_IS_TOO_LARGE,
 
175
                    iae.getMessage());
 
176
        }
 
177
    }
 
178
 
 
179
}