$stringStruct->readFromJson($strJson1); assert_equals($stringStruct->a, ""); $strJson2 = "{\n}"; $stringStruct->readFromJson($strJson2); assert_equals($stringStruct->a, null); $strJson3 = "{\n \"a\": \"foobar\"\n}"; $stringStruct->readFromJson($strJson3); assert_equals($stringStruct->a, "foobar"); /** * Integration Test * This config file is from configerator/materialize_configs/ffuuu * It should not product any exceptions */ try { $config = new Config(array()); $config->readFromJson(file_get_contents($HERE . '/config.json')); } catch (Exception $e) { print_r($e); fail("Fail intregation test!"); } /** * Test invalid JSON string */ $invalidJson1 = "{ 'a': 'baz' }"; test_exception($stringStruct, $invalidJson1); $invalidJson2 = '{ a : "baz" }'; test_exception($stringStruct, $invalidJson2); $invalidJson3 = '{ "bar" : "baz", }'; test_exception($stringStruct, $invalidJson3); $invalidJson4 = 'foo: bar'; test_exception($stringStruct, $invalidJson4);