Release 0.3.0
[govpp.git] / cmd / binapi-generator / generate_test.go
index bac5b51..4bec874 100644 (file)
@@ -16,6 +16,7 @@ package main
 
 import (
        "bufio"
+       "io/ioutil"
        "os"
        "testing"
 
@@ -24,7 +25,7 @@ import (
 
 func TestGetInputFiles(t *testing.T) {
        RegisterTestingT(t)
-       result, err := getInputFiles("testdata")
+       result, err := getInputFiles("testdata", 1)
        Expect(err).ShouldNot(HaveOccurred())
        Expect(result).To(HaveLen(3))
        for _, file := range result {
@@ -34,7 +35,7 @@ func TestGetInputFiles(t *testing.T) {
 
 func TestGetInputFilesError(t *testing.T) {
        RegisterTestingT(t)
-       result, err := getInputFiles("nonexisting_directory")
+       result, err := getInputFiles("nonexisting_directory", 1)
        Expect(err).Should(HaveOccurred())
        Expect(result).To(BeNil())
 }
@@ -44,7 +45,7 @@ func TestGenerateFromFile(t *testing.T) {
        outDir := "test_output_directory"
        // remove directory created during test
        defer os.RemoveAll(outDir)
-       err := generateFromFile("testdata/acl.api.json", outDir)
+       err := generateFromFile("testdata/acl.api.json", outDir, nil)
        Expect(err).ShouldNot(HaveOccurred())
        fileInfo, err := os.Stat(outDir + "/acl/acl.ba.go")
        Expect(err).ShouldNot(HaveOccurred())
@@ -55,7 +56,7 @@ func TestGenerateFromFile(t *testing.T) {
 func TestGenerateFromFileInputError(t *testing.T) {
        RegisterTestingT(t)
        outDir := "test_output_directory"
-       err := generateFromFile("testdata/nonexisting.json", outDir)
+       err := generateFromFile("testdata/nonexisting.json", outDir, nil)
        Expect(err).Should(HaveOccurred())
        Expect(err.Error()).To(ContainSubstring("invalid input file name"))
 }
@@ -63,7 +64,7 @@ func TestGenerateFromFileInputError(t *testing.T) {
 func TestGenerateFromFileReadJsonError(t *testing.T) {
        RegisterTestingT(t)
        outDir := "test_output_directory"
-       err := generateFromFile("testdata/input-read-json-error.json", outDir)
+       err := generateFromFile("testdata/input-read-json-error.json", outDir, nil)
        Expect(err).Should(HaveOccurred())
        Expect(err.Error()).To(ContainSubstring("invalid input file name"))
 }
@@ -78,14 +79,14 @@ func TestGenerateFromFileGeneratePackageError(t *testing.T) {
                }
                os.RemoveAll(outDir)
        }()
-       err := generateFromFile("testdata/input-generate-error.json", outDir)
+       err := generateFromFile("testdata/input-generate-error.json", outDir, nil)
        Expect(err).Should(HaveOccurred())
 }
 
 func TestGetContext(t *testing.T) {
        RegisterTestingT(t)
        outDir := "test_output_directory"
-       result, err := getContext("testdata/af_packet.api.json", outDir)
+       result, err := newContext("testdata/af_packet.api.json", outDir)
        Expect(err).ShouldNot(HaveOccurred())
        Expect(result).ToNot(BeNil())
        Expect(result.outputFile).To(BeEquivalentTo(outDir + "/af_packet/af_packet.ba.go"))
@@ -94,7 +95,7 @@ func TestGetContext(t *testing.T) {
 func TestGetContextNoJsonFile(t *testing.T) {
        RegisterTestingT(t)
        outDir := "test_output_directory"
-       result, err := getContext("testdata/input.txt", outDir)
+       result, err := newContext("testdata/input.txt", outDir)
        Expect(err).Should(HaveOccurred())
        Expect(err.Error()).To(ContainSubstring("invalid input file name"))
        Expect(result).To(BeNil())
@@ -103,7 +104,7 @@ func TestGetContextNoJsonFile(t *testing.T) {
 func TestGetContextInterfaceJson(t *testing.T) {
        RegisterTestingT(t)
        outDir := "test_output_directory"
-       result, err := getContext("testdata/ip.api.json", outDir)
+       result, err := newContext("testdata/ip.api.json", outDir)
        Expect(err).ShouldNot(HaveOccurred())
        Expect(result).ToNot(BeNil())
        Expect(result.outputFile)
@@ -112,9 +113,9 @@ func TestGetContextInterfaceJson(t *testing.T) {
 
 func TestReadJson(t *testing.T) {
        RegisterTestingT(t)
-       inputData, err := readFile("testdata/af_packet.api.json")
+       inputData, err := ioutil.ReadFile("testdata/af_packet.api.json")
        Expect(err).ShouldNot(HaveOccurred())
-       result, err := parseJSON(inputData)
+       result, err := parseInputJSON(inputData)
        Expect(err).ShouldNot(HaveOccurred())
        Expect(result).ToNot(BeNil())
        Expect(result.Len()).To(BeEquivalentTo(5))
@@ -122,9 +123,9 @@ func TestReadJson(t *testing.T) {
 
 func TestReadJsonError(t *testing.T) {
        RegisterTestingT(t)
-       inputData, err := readFile("testdata/input-read-json-error.json")
+       inputData, err := ioutil.ReadFile("testdata/input-read-json-error.json")
        Expect(err).ShouldNot(HaveOccurred())
-       result, err := parseJSON(inputData)
+       result, err := parseInputJSON(inputData)
        Expect(err).Should(HaveOccurred())
        Expect(result).To(BeNil())
 }
@@ -136,9 +137,9 @@ func TestGeneratePackage(t *testing.T) {
        testCtx.packageName = "test-package-name"
 
        // prepare input/output output files
-       inputData, err := readFile("testdata/ip.api.json")
+       inputData, err := ioutil.ReadFile("testdata/ip.api.json")
        Expect(err).ShouldNot(HaveOccurred())
-       jsonRoot, err := parseJSON(inputData)
+       jsonRoot, err := parseInputJSON(inputData)
        Expect(err).ShouldNot(HaveOccurred())
        testCtx.packageData, err = parsePackage(testCtx, jsonRoot)
        Expect(err).ShouldNot(HaveOccurred())
@@ -161,9 +162,9 @@ func TestGenerateMessageType(t *testing.T) {
        testCtx.packageName = "test-package-name"
 
        // prepare input/output output files
-       inputData, err := readFile("testdata/ip.api.json")
+       inputData, err := ioutil.ReadFile("testdata/ip.api.json")
        Expect(err).ShouldNot(HaveOccurred())
-       jsonRoot, err := parseJSON(inputData)
+       jsonRoot, err := parseInputJSON(inputData)
        Expect(err).ShouldNot(HaveOccurred())
        outDir := "test_output_directory"
        outFile, err := os.Create(outDir)