1
0
mirror of https://github.com/aclindsa/moneygo.git synced 2025-07-01 20:08:39 -04:00

Add initial OFX import test

So far, this only checks to ensure that the import doesn't return an
error code.
This commit is contained in:
2017-11-26 14:42:05 -05:00
parent 7a23739a0b
commit aa8924243e
6 changed files with 345 additions and 46 deletions

View File

@ -10,6 +10,7 @@ import (
"io"
"io/ioutil"
"log"
"mime/multipart"
"net/http"
"net/http/httptest"
"os"
@ -158,6 +159,49 @@ func remove(client *http.Client, urlsuffix string) error {
return nil
}
func uploadFile(client *http.Client, filename, urlsuffix string) error {
var buf bytes.Buffer
mw := multipart.NewWriter(&buf)
file, err := os.Open(filename)
if err != nil {
return err
}
defer file.Close()
filewriter, err := mw.CreateFormFile("file", filename)
if err != nil {
return err
}
if _, err := io.Copy(filewriter, file); err != nil {
return err
}
mw.Close()
response, err := client.Post(server.URL+urlsuffix, mw.FormDataContentType(), &buf)
if err != nil {
return err
}
body, err := ioutil.ReadAll(response.Body)
response.Body.Close()
if err != nil {
return err
}
var e handlers.Error
err = (&e).Read(string(body))
if err != nil {
return err
}
if e.ErrorId != 0 || len(e.ErrorString) != 0 {
return &e
}
return nil
}
func RunWith(t *testing.T, d *TestData, fn TestDataFunc) {
testdata, err := d.Initialize()
if err != nil {