On 1 August 2013 22:57, <[email protected]> wrote: > Author: ggregory > Date: Thu Aug 1 21:57:46 2013 > New Revision: 1509450 > > URL: http://svn.apache.org/r1509450 > Log: > Add CSVRecord#getInt(String) API and tests.
-1 I think this is out of scope for CSV. > Added: > > commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVRecordIntTest.java > (with props) > Modified: > > commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVRecord.java > > Modified: > commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVRecord.java > URL: > http://svn.apache.org/viewvc/commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVRecord.java?rev=1509450&r1=1509449&r2=1509450&view=diff > ============================================================================== > --- > commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVRecord.java > (original) > +++ > commons/proper/csv/trunk/src/main/java/org/apache/commons/csv/CSVRecord.java > Thu Aug 1 21:57:46 2013 > @@ -146,6 +146,23 @@ public class CSVRecord implements Serial > * if the record is inconsistent > * @see #isConsistent() > */ > + public int getInt(String name) { > + String s = this.get(name); > + return s != null ? Integer.parseInt(s) : 0; > + } > + > + /** > + * Returns a value by name. > + * > + * @param name > + * the name of the column to be retrieved. > + * @return the column value > + * @throws IllegalStateException > + * if no header mapping was provided > + * @throws IllegalArgumentException > + * if the record is inconsistent > + * @see #isConsistent() > + */ > public long getLong(String name) { > String s = this.get(name); > return s != null ? Long.parseLong(s) : 0; > > Added: > commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVRecordIntTest.java > URL: > http://svn.apache.org/viewvc/commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVRecordIntTest.java?rev=1509450&view=auto > ============================================================================== > --- > commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVRecordIntTest.java > (added) > +++ > commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVRecordIntTest.java > Thu Aug 1 21:57:46 2013 > @@ -0,0 +1,64 @@ > +/* > + * Licensed to the Apache Software Foundation (ASF) under one or more > + * contributor license agreements. See the NOTICE file distributed with > + * this work for additional information regarding copyright ownership. > + * The ASF licenses this file to You under the Apache License, Version 2.0 > + * (the "License"); you may not use this file except in compliance with > + * the License. You may obtain a copy of the License at > + * > + * http://www.apache.org/licenses/LICENSE-2.0 > + * > + * Unless required by applicable law or agreed to in writing, software > + * distributed under the License is distributed on an "AS IS" BASIS, > + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. > + * See the License for the specific language governing permissions and > + * limitations under the License. > + */ > +package org.apache.commons.csv; > + > +import java.io.IOException; > + > +import org.junit.Assert; > +import org.junit.Before; > +import org.junit.Test; > + > +public class CSVRecordIntTest { > + > + private CSVRecord record; > + > + /** > + * @return > + * @throws IOException > + */ > + private CSVRecord createTestRecord() throws IOException { > + String csv = "A, B, C, D, E\n-1, 0, 1, " + Integer.MAX_VALUE + ", " > + Integer.MIN_VALUE; > + CSVRecord record = CSVParser.parseString(csv, > CSVFormat.DEFAULT.withHeader().withIgnoreSurroundingSpaces(true)) > + .iterator().next(); > + return record; > + } > + > + @Before > + public void setUp() throws IOException { > + this.record = createTestRecord(); > + } > + > + @Test(expected = IllegalArgumentException.class) > + public void testGetIntegerByMissingString() { > + Assert.assertEquals(null, Integer.valueOf(record.getInt("ABSENT"))); > + } > + > + @Test(expected = IllegalArgumentException.class) > + public void testGetIntegerByNullString() { > + Assert.assertEquals(null, Integer.valueOf(record.getInt(null))); > + } > + > + @Test > + public void testGetIntegerByString() { > + Assert.assertEquals(-1, record.getInt("A")); > + Assert.assertEquals(0, record.getInt("B")); > + Assert.assertEquals(1, record.getInt("C")); > + Assert.assertEquals(Integer.MAX_VALUE, record.getInt("D")); > + Assert.assertEquals(Integer.MIN_VALUE, record.getInt("E")); > + } > + > +} > > Propchange: > commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVRecordIntTest.java > ------------------------------------------------------------------------------ > svn:eol-style = native > > Propchange: > commons/proper/csv/trunk/src/test/java/org/apache/commons/csv/CSVRecordIntTest.java > ------------------------------------------------------------------------------ > svn:keywords = Id > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
