diff --git a/menu_traversal_test.go b/menu_traversal_test.go index a39fb7b..382ca76 100644 --- a/menu_traversal_test.go +++ b/menu_traversal_test.go @@ -3,10 +3,11 @@ package main import ( "bytes" "context" + "fmt" "testing" "git.grassecon.net/urdt/ussd/driver" - "git.grassecon.net/urdt/ussd/engine" + enginetest "git.grassecon.net/urdt/ussd/engine" ) var ( @@ -15,34 +16,39 @@ var ( func TestUserRegistration(t *testing.T) { en, _ := enginetest.TestEngine("session1234112") - var err error + defer en.Finish() + //var err error ctx := context.Background() sessions := testData for _, session := range sessions { groups := driver.FilterGroupsByName(session.Groups, "account_creation_successful") for _, group := range groups { for _, step := range group.Steps { - cont, _ := en.Exec(ctx, []byte(step.Input)) - if cont { - w := bytes.NewBuffer(nil) - _, err = en.Flush(ctx, w) - if err != nil { - t.Fatal(err) - } - b := w.Bytes() - if !bytes.Equal(b, []byte(step.ExpectedContent)) { - t.Fatalf("expected:\n\t%s\ngot:\n\t%s\n", step.ExpectedContent, b) - } + // for { + _, err := en.Exec(ctx, []byte(step.Input)) + if err != nil { + t.Fail() } + w := bytes.NewBuffer(nil) + _, err = en.Flush(ctx, w) + if err != nil { + t.Fatal(err) + } + b := w.Bytes() + if !bytes.Equal(b, []byte(step.ExpectedContent)) { + t.Fatalf("expected:\n\t%s\ngot:\n\t%s\n", step.ExpectedContent, b) + } + // } + } } } } -func TestAcceptTerms(t *testing.T) { - en, _ := enginetest.TestEngine("session12341123") - var err error +func TestTerms(t *testing.T) { + en, _ := enginetest.TestEngine("session1234112") + defer en.Finish() ctx := context.Background() sessions := testData @@ -50,20 +56,24 @@ func TestAcceptTerms(t *testing.T) { groups := driver.FilterGroupsByName(session.Groups, "account_creation_accept_terms") for _, group := range groups { for _, step := range group.Steps { - cont, _ := en.Exec(ctx, []byte(step.Input)) - if cont { - w := bytes.NewBuffer(nil) - _, err = en.Flush(ctx, w) - if err != nil { - t.Fatal(err) - } - b := w.Bytes() - if !bytes.Equal(b, []byte(step.ExpectedContent)) { - t.Fatalf("expected:\n\t%s\ngot:\n\t%s\n", step.ExpectedContent, b) - } - + // for { + _, err := en.Exec(ctx, []byte(step.Input)) + if err != nil { + t.Fail() } + w := bytes.NewBuffer(nil) + _, err = en.Flush(ctx, w) + if err != nil { + t.Fatal(err) + } + b := w.Bytes() + fmt.Println("valuehere:", string(b)) + if !bytes.Equal(b, []byte(step.ExpectedContent)) { + t.Fatalf("expected:\n\t%s\ngot:\n\t%s\n", step.ExpectedContent, b) + } + // } + } } }