package account import ( "os" "testing" "time" "code.revolvingcow.com/revolvingcow/loop/environment" ) func TestGetAccounts(t *testing.T) { a, err := getAccounts() if err != nil || a == nil { t.Error(err) } } func TestCreate(t *testing.T) { a := Account{ Username: "guest", Passphrase: "guest", } environment.ConfigureEnvironment() err := a.Create() if err != nil { t.Error(err) } valid, err := a.Validate() if err != nil { t.Error(err) } if !valid { t.Error("Failed to create account") } } func TestValidate(t *testing.T) { a := Account{ Username: "fake", Passphrase: "fake", } valid, err := a.Validate() if err != nil { t.Error(err) } if valid { t.Error("Fake account should not exist") } } func TestAdd(t *testing.T) { a := Account{ Username: "guest", Passphrase: "guest", } environment.ConfigureEnvironment() fp, err := a.Add("", "", []byte{}) if err == nil { t.Error("Fake content should not be publishable") } fp, err = a.Add("", "README.md", []byte{}) if fp == "" { t.Error("File name should have been returned") } if err != nil { t.Error(err) } } func TestContent(t *testing.T) { a := Account{ Username: "guest", Passphrase: "guest", } environment.ConfigureEnvironment() a.Add("", "README.md", []byte{}) c, err := a.Content() if err != nil { t.Error(err) } if len(c) == 0 { t.Error("No content found") } } func TestPublish(t *testing.T) { a := Account{ Username: "guest", Passphrase: "guest", } environment.ConfigureEnvironment() err := a.Publish("My first blog post", "thisshouldnotexist", time.Now()) if err == nil { t.Error("Fake content should not be publishable") } } func TestDelete(t *testing.T) { a := Account{ Username: "guest", Passphrase: "guest", } environment.ConfigureEnvironment() err := a.Delete() if err != nil { t.Error(err) } valid, err := a.Validate() if err != nil { t.Error(err) } if valid { t.Error("Failed to delete account") } } func TestCleanup(t *testing.T) { err := os.Remove("loop_users") if err != nil { t.Error(err) } }