mirror of
https://github.com/spring-projects/spring-framework
synced 2026-06-08 17:33:33 +00:00
Allow null params as advertised in Constants#toCode*
Even though the Javadoc for Constants#toCode and #toCodeForSuffix specifies that a null value for the 'namePrefix' and 'nameSuffix' parameters are respectively allowed, before this change passing a null to either would result in a NullPointerException. This change fixes constant name lookup for null values of these params as if an empty string had been passed instead. This way of handling a null value is consistent with the rest of Constants class API. Issue: SPR-8278
This commit is contained in:
committed by
Chris Beams
parent
95e99fe2a3
commit
6ffb0436fa
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2002-2007 the original author or authors.
|
||||
* Copyright 2002-2012 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -148,19 +148,28 @@ public class ConstantsTests extends TestCase {
|
||||
assertEquals(c.toCode(new Integer(0), "D"), "DOG");
|
||||
assertEquals(c.toCode(new Integer(0), "DO"), "DOG");
|
||||
assertEquals(c.toCode(new Integer(0), "DoG"), "DOG");
|
||||
assertEquals(c.toCode(new Integer(0), null), "DOG");
|
||||
assertEquals(c.toCode(new Integer(66), ""), "CAT");
|
||||
assertEquals(c.toCode(new Integer(66), "C"), "CAT");
|
||||
assertEquals(c.toCode(new Integer(66), "ca"), "CAT");
|
||||
assertEquals(c.toCode(new Integer(66), "cAt"), "CAT");
|
||||
assertEquals(c.toCode(new Integer(66), null), "CAT");
|
||||
assertEquals(c.toCode("", ""), "S1");
|
||||
assertEquals(c.toCode("", "s"), "S1");
|
||||
assertEquals(c.toCode("", "s1"), "S1");
|
||||
assertEquals(c.toCode("", null), "S1");
|
||||
try {
|
||||
c.toCode("bogus", "bogus");
|
||||
fail("Should have thrown ConstantException");
|
||||
}
|
||||
catch (ConstantException expected) {
|
||||
}
|
||||
try {
|
||||
c.toCode("bogus", null);
|
||||
fail("Should have thrown ConstantException");
|
||||
}
|
||||
catch (ConstantException expected) {
|
||||
}
|
||||
|
||||
assertEquals(c.toCodeForProperty(new Integer(1), "myProperty"), "MY_PROPERTY_NO");
|
||||
assertEquals(c.toCodeForProperty(new Integer(2), "myProperty"), "MY_PROPERTY_YES");
|
||||
@@ -175,19 +184,28 @@ public class ConstantsTests extends TestCase {
|
||||
assertEquals(c.toCodeForSuffix(new Integer(0), "G"), "DOG");
|
||||
assertEquals(c.toCodeForSuffix(new Integer(0), "OG"), "DOG");
|
||||
assertEquals(c.toCodeForSuffix(new Integer(0), "DoG"), "DOG");
|
||||
assertEquals(c.toCodeForSuffix(new Integer(0), null), "DOG");
|
||||
assertEquals(c.toCodeForSuffix(new Integer(66), ""), "CAT");
|
||||
assertEquals(c.toCodeForSuffix(new Integer(66), "T"), "CAT");
|
||||
assertEquals(c.toCodeForSuffix(new Integer(66), "at"), "CAT");
|
||||
assertEquals(c.toCodeForSuffix(new Integer(66), "cAt"), "CAT");
|
||||
assertEquals(c.toCodeForSuffix(new Integer(66), null), "CAT");
|
||||
assertEquals(c.toCodeForSuffix("", ""), "S1");
|
||||
assertEquals(c.toCodeForSuffix("", "1"), "S1");
|
||||
assertEquals(c.toCodeForSuffix("", "s1"), "S1");
|
||||
assertEquals(c.toCodeForSuffix("", null), "S1");
|
||||
try {
|
||||
c.toCodeForSuffix("bogus", "bogus");
|
||||
fail("Should have thrown ConstantException");
|
||||
}
|
||||
catch (ConstantException expected) {
|
||||
}
|
||||
try {
|
||||
c.toCodeForSuffix("bogus", null);
|
||||
fail("Should have thrown ConstantException");
|
||||
}
|
||||
catch (ConstantException expected) {
|
||||
}
|
||||
}
|
||||
|
||||
public void testGetValuesWithNullPrefix() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user