package com.google.gson.functional;
import com.google.gson.Gson;
import junit.framework.TestCase;
/**
* Functional tests for Json serialization and deserialization of strings.
*
* @author Inderjeet Singh
* @author Joel Leitch
*/
public class StringTest extends TestCase {
private Gson gson;
@Override
protected void setUp() throws Exception {
super.setUp();
gson = new Gson();
}
public void testStringValueSerialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testStringValueSerialization");
String value = "foo";
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2494,(('\"' + value) + '\"'));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2496,gson,2495,gson.toJson(value));
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testStringValueDeserialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testStringValueDeserialization");
String value = "foo";
String actual = gson.fromJson((("\"" + value) + "\""), String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2492,value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2493,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testStringValueDeserialization_literalMutation2014() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testStringValueDeserialization_literalMutation2014");
String value = "someRandomStringValue";
String actual = gson.fromJson((("foo" + value) + "\""), String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2492,value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2493,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testStringValueDeserialization_literalMutation2015() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testStringValueDeserialization_literalMutation2015");
String value = "someRandomStringValue";
String actual = gson.fromJson((("\"" + value) + "foo"), String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2492,value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2493,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testSingleQuoteInStringSerialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testSingleQuoteInStringSerialization");
String valueWithQuotes = "foo";
String jsonRepresentation = gson.toJson(valueWithQuotes);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2485,valueWithQuotes);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2487,gson,2486,gson.fromJson(jsonRepresentation, java.lang.String.class));
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapedCtrlNInStringSerialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapedCtrlNInStringSerialization");
String value = "foo";
String json = gson.toJson(value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2471,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapedCtrlNInStringDeserialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapedCtrlNInStringDeserialization");
String json = "foo";
String actual = gson.fromJson(json, String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2470,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapedCtrlRInStringSerialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapedCtrlRInStringSerialization");
String value = "foo";
String json = gson.toJson(value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2473,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapedCtrlRInStringDeserialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapedCtrlRInStringDeserialization");
String json = "foo";
String actual = gson.fromJson(json, String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2472,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapedBackslashInStringSerialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapedBackslashInStringSerialization");
String value = "foo";
String json = gson.toJson(value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1542,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapedBackslashInStringDeserialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapedBackslashInStringDeserialization");
String actual = gson.fromJson("foo", String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),1969,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testSingleQuoteInStringDeserialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testSingleQuoteInStringDeserialization");
String value = "foo";
String actual = gson.fromJson((("\"" + value) + "\""), String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2483,value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2484,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testSingleQuoteInStringDeserialization_literalMutation2009() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testSingleQuoteInStringDeserialization_literalMutation2009");
String value = "beforeQuote\'afterQuote";
String actual = gson.fromJson((("foo" + value) + "\""), String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2483,value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2484,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testSingleQuoteInStringDeserialization_literalMutation2010() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testSingleQuoteInStringDeserialization_literalMutation2010");
String value = "beforeQuote\'afterQuote";
String actual = gson.fromJson((("\"" + value) + "foo"), String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2483,value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2484,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapingQuotesInStringSerialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapingQuotesInStringSerialization");
String valueWithQuotes = "foo";
String jsonRepresentation = gson.toJson(valueWithQuotes);
String target = gson.fromJson(jsonRepresentation, String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2476,valueWithQuotes);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2477,target);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapingQuotesInStringDeserialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapingQuotesInStringDeserialization");
String value = "foo";
String actual = gson.fromJson((("\"" + value) + "\""), String.class);
String expected = "beforeQuote\"afterQuote";
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2474,expected);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2475,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapingQuotesInStringDeserialization_literalMutation2002() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapingQuotesInStringDeserialization_literalMutation2002");
String value = "beforeQuote\\\"afterQuote";
String actual = gson.fromJson((("foo" + value) + "\""), String.class);
String expected = "beforeQuote\"afterQuote";
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2474,expected);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2475,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapingQuotesInStringDeserialization_literalMutation2003() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapingQuotesInStringDeserialization_literalMutation2003");
String value = "beforeQuote\\\"afterQuote";
String actual = gson.fromJson((("\"" + value) + "foo"), String.class);
String expected = "beforeQuote\"afterQuote";
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2474,expected);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2475,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testEscapingQuotesInStringDeserialization_literalMutation2004() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testEscapingQuotesInStringDeserialization_literalMutation2004");
String value = "beforeQuote\\\"afterQuote";
String actual = gson.fromJson((("\"" + value) + "\""), String.class);
String expected = "foo";
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2474,expected);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2475,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testStringValueAsSingleElementArraySerialization() throws Exception {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testStringValueAsSingleElementArraySerialization");
String[] target = new String[]{ "foo" };
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2489,gson,2488,gson.toJson(target));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2491,gson,2490,gson.toJson(target, java.lang.String[].class));
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testStringWithEscapedSlashDeserialization() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testStringWithEscapedSlashDeserialization");
String value = "foo";
String json = "\'\\/\'";
String actual = gson.fromJson(json, String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2497,value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2315,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testStringWithEscapedSlashDeserialization_literalMutation2018() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testStringWithEscapedSlashDeserialization_literalMutation2018");
String value = "/";
String json = "foo";
String actual = gson.fromJson(json, String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2497,value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2315,actual);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
/**
* Created in response to http://groups.google.com/group/google-gson/browse_thread/thread/2431d4a3d0d6cb23
*/
public void testAssignmentCharSerialization() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testAssignmentCharSerialization");
String value = "foo";
String json = gson.toJson(value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2117,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
/**
* Created in response to http://groups.google.com/group/google-gson/browse_thread/thread/2431d4a3d0d6cb23
*/
public void testAssignmentCharDeserialization() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testAssignmentCharDeserialization");
String json = "foo";
String value = gson.fromJson(json, String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2469,value);
json = "\'abc=\'";
value = gson.fromJson(json, String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2193,value);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
/**
* Created in response to http://groups.google.com/group/google-gson/browse_thread/thread/2431d4a3d0d6cb23
*/
public void testAssignmentCharDeserialization_literalMutation1993() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testAssignmentCharDeserialization_literalMutation1993");
String json = "\"abc=\"";
String value = gson.fromJson(json, String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2469,value);
json = "foo";
value = gson.fromJson(json, String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2193,value);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testJavascriptKeywordsInStringSerialization() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testJavascriptKeywordsInStringSerialization");
String value = "foo";
String json = gson.toJson(value);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2481,(("\"" + value) + "\""));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2482,json);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
public void testJavascriptKeywordsInStringDeserialization() {
fr.inria.diversify.testamplification.logger.Logger.writeTestStart(Thread.currentThread(),this, "testJavascriptKeywordsInStringDeserialization");
String json = "foo";
String value = gson.fromJson(json, String.class);
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2479,json,2478,json.substring(1, ((json.length()) - 1)));
fr.inria.diversify.testamplification.logger.Logger.logAssertArgument(Thread.currentThread(),2480,value);
fr.inria.diversify.testamplification.logger.Logger.writeTestFinish(Thread.currentThread());
}
}