From 729f8d060365c7b0c19e209928d7ed4d8f29bcad Mon Sep 17 00:00:00 2001 From: Krishna m-Kumar Date: Mon, 27 Apr 2015 16:48:57 +0800 Subject: [PATCH 1/3] Update csv.go --- store/csv.go | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/store/csv.go b/store/csv.go index 4f9bcd8..05e0ba6 100644 --- a/store/csv.go +++ b/store/csv.go @@ -189,13 +189,17 @@ func (store *CsvStore) LoadAll() (samples []experiment.Experiment, err error) { samples = make([]experiment.Experiment, 0) for _, f := range files { base := strings.Split(f.Name(), ".")[0] - name := strings.SplitN(base, "-", 2)[1] - if len(name) > 0 { - loaded, err := store.load(f.Name(), name) - if err == nil { - samples = append(samples, loaded) + // In the output dir if a file/directory does not have a '-' (was part of standard output file), then it ignores it. + ret := strings.Contains(base, "-") + if(ret) { + name := strings.SplitN(base, "-", 2)[1] + if len(name) > 0 { + loaded, err := store.load(f.Name(), name) + if err == nil { + samples = append(samples, loaded) + } } - } + } } return From edc1fff0249620ce798a0b5226109cb20b2ed4ce Mon Sep 17 00:00:00 2001 From: ubuntu Date: Wed, 17 Jun 2015 16:33:26 +0800 Subject: [PATCH 2/3] outputpanic fix --- store/csv.go | 38 ++++++++++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/store/csv.go b/store/csv.go index 4f9bcd8..b175a85 100644 --- a/store/csv.go +++ b/store/csv.go @@ -9,6 +9,7 @@ import ( "strconv" "strings" "time" + "fmt" "github.com/cloudfoundry-incubator/pat/experiment" "github.com/cloudfoundry-incubator/pat/logs" @@ -185,19 +186,36 @@ func (store *CsvStore) LoadAll() (samples []experiment.Experiment, err error) { if err != nil { return nil, err } + + var err_string string samples = make([]experiment.Experiment, 0) for _, f := range files { - base := strings.Split(f.Name(), ".")[0] - name := strings.SplitN(base, "-", 2)[1] - if len(name) > 0 { - loaded, err := store.load(f.Name(), name) - if err == nil { - samples = append(samples, loaded) - } - } - } - + Iscsvfile := strings.Contains(f.Name(), ".csv") + if (Iscsvfile) { + base := strings.Split(f.Name(), ".")[0] + Isdash := strings.Contains(base, "-") + var name string = "" + if (Isdash) { + name = strings.SplitN(base, "-", 2)[1] + } + if len(name) <= 0 { + name = base + } + loaded, err := store.load(f.Name(), name) + if err == nil { + samples = append(samples, loaded) + } + } else { + err_string = err_string + "," + f.Name() + + } + + } + if len(err_string) > 0 { + return samples, fmt.Errorf("these files are ignored %s", err_string) + } + return } From 9e4ad19ab5896b5efde852c7c9a7a197f4be5baa Mon Sep 17 00:00:00 2001 From: krishna-mk Date: Wed, 17 Jun 2015 16:41:19 +0800 Subject: [PATCH 3/3] panicFix --- store/csv_test.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/store/csv_test.go b/store/csv_test.go index abc9141..2937563 100644 --- a/store/csv_test.go +++ b/store/csv_test.go @@ -98,6 +98,13 @@ var _ = Describe("Csv Store", func() { Ω(data(samples[2].GetData())).Should(HaveLen(3)) }) + It("Check CSVs files ", func() { + os.Create(dir+"/wrong-file-format") + _ , err := store.LoadAll() + Ω(err).Should(HaveOccurred()) + Ω(err.Error()).To(Equal("these files are ignored ,wrong-file-format")) + }) + PIt("Throws exception if header is not in correct order", func() { })