func TestValidJSONDepthTwo(t *testing.T) { input := common.MapStr{ "msg": "{\"log\":\"{\\\"level\\\":\\\"info\\\"}\",\"stream\":\"stderr\",\"count\":3}", "pipeline": "us1", } testConfig, _ = common.NewConfigFrom(map[string]interface{}{ "fields": fields, "processArray": false, "maxDepth": 2, }) actual := getActualValue(t, testConfig, input) expected := common.MapStr{ "msg": map[string]interface{}{ "log": map[string]interface{}{ "level": "info", }, "stream": "stderr", "count": 3, }, "pipeline": "us1", } assert.Equal(t, expected.String(), actual.String()) }
func TestMissingKey(t *testing.T) { input := common.MapStr{ "pipeline": "us1", } actual := getActualValue(t, testConfig, input) expected := common.MapStr{ "pipeline": "us1", } assert.Equal(t, expected.String(), actual.String()) }
func equalEvent(expectedEvent common.MapStr, event common.MapStr) bool { // Remove labels to test // expectedLabels := expectedEvent["containerLabels"] // labels := event["containerLabels"] expectedEvent["containerLabels"] = []common.MapStr{} event["containerLabels"] = []common.MapStr{} // test equality return expectedEvent.String() == event.String() // TODO test labels }
func TestInvalidJSON(t *testing.T) { input := common.MapStr{ "msg": "{\"log\":\"{\\\"level\\\":\\\"info\\\"}\",\"stream\":\"stderr\",\"count\":3", "pipeline": "us1", } actual := getActualValue(t, testConfig, input) expected := common.MapStr{ "msg": "{\"log\":\"{\\\"level\\\":\\\"info\\\"}\",\"stream\":\"stderr\",\"count\":3", "pipeline": "us1", } assert.Equal(t, expected.String(), actual.String()) }
func TestFieldNotString(t *testing.T) { input := common.MapStr{ "msg": 123, "pipeline": "us1", } actual := getActualValue(t, testConfig, input) expected := common.MapStr{ "msg": 123, "pipeline": "us1", } assert.Equal(t, expected.String(), actual.String()) }
func TestValidJSONDepthOne(t *testing.T) { input := common.MapStr{ "msg": "{\"log\":\"{\\\"level\\\":\\\"info\\\"}\",\"stream\":\"stderr\",\"count\":3}", "pipeline": "us1", } actual := getActualValue(t, testConfig, input) expected := common.MapStr{ "msg": map[string]interface{}{ "log": "{\"level\":\"info\"}", "stream": "stderr", "count": 3, }, "pipeline": "us1", } assert.Equal(t, expected.String(), actual.String()) }