func TestFileStreamWithPathTestSuite(t *testing.T) { s := "hello, world!" tempFilepath := path.Join(os.TempDir(), "hello-gmime.txt") { err := ioutil.WriteFile(tempFilepath, []byte(s), 0644) assert.NoError(t, err) defer os.Remove(tempFilepath) rfs := gmime.NewFileStreamForPath(tempFilepath, "r") l := rfs.Length() l2, r := rfs.Read(l) assert.Equal(t, l, len(s)) assert.Equal(t, l, l2) assert.Equal(t, s, r) } { wfs := gmime.NewFileStreamForPath(tempFilepath, "w") defer os.Remove(tempFilepath) b := []byte(s) l := wfs.Write(b) assert.Equal(t, l, len(b)) wfs.Close() r, err := ioutil.ReadFile(tempFilepath) assert.NoError(t, err) assert.Equal(t, r, s) } { wfs := gmime.NewFileStreamForPath(tempFilepath, "w") defer os.Remove(tempFilepath) l := wfs.WriteString(s) assert.Equal(t, l, len(s)) wfs.Close() r, err := ioutil.ReadFile(tempFilepath) assert.NoError(t, err) assert.Equal(t, r, s) } }
func main() { flag.Parse() if file_name == "" { panic("no filename given") } fs := gmime.NewFileStreamForPath(file_name, "r") if fs == nil { panic("can't open " + file_name) } parser := gmime.NewParserWithStream(fs) parser.SetScanFrom(scan_from) message := parser.ConstructMessage() if message != nil { msgid, ok := message.MessageId() fmt.Printf("Inspecting %s\n: message.MessageId() == \"%v\", %v\n", file_name, msgid, ok) inspect_message(message) } }