package com.rw.legion.columntransform;

import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.*;

class NullReplaceTransformerTest {

    private NullReplaceTransformer npt;
    private String replacement = "bar";

    private JsonObject buildJson (String replacement) {
        String json = "\n" +
                "{\n" +
                "  \"replacement\": \"" + replacement + "\"\n" +
                "}";

        JsonParser parser = new JsonParser();
        JsonObject obj = parser.parse(json).getAsJsonObject();

        return obj;
    }

    @BeforeEach
    void setUp() {
        npt = new NullReplaceTransformer(buildJson(replacement));
    }

    @Test
    void transformStr() {
        assertEquals(replacement, npt.transform(""));
    }

    @Test
    void transformNull() {
        assertEquals(replacement, npt.transform(null));
    }

    @Test
    void transformNoReplace() {
        String mystring = "mystring";
        assertEquals(mystring, npt.transform(mystring));
    }

}

@@ -1,8 +1,615 @@
+/*%0A * Copyright (C) 2017 Republic Wireless%0A *%0A * Licensed under the Apache License, Version 2.0 (the %22License%22);%0A * you may not use this file except in compliance with the License.%0A * You may obtain a copy of the License at%0A *%0A *      http://www.apache.org/licenses/LICENSE-2.0%0A *%0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS,%0A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A * See the License for the specific language governing permissions and%0A * limitations under the License.%0A */%0A%0A
 package 

Add missing copyright header to NullReplaceTransformerTest