當前位置: 首頁>>代碼示例>>Golang>>正文


Golang TodoClient.GetTodo方法代碼示例

本文整理匯總了Golang中github.com/benschw/go-todo/client.TodoClient.GetTodo方法的典型用法代碼示例。如果您正苦於以下問題:Golang TodoClient.GetTodo方法的具體用法?Golang TodoClient.GetTodo怎麽用?Golang TodoClient.GetTodo使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在github.com/benschw/go-todo/client.TodoClient的用法示例。


在下文中一共展示了TodoClient.GetTodo方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: TestUpdateTodo

func TestUpdateTodo(t *testing.T) {

	// given
	client := client.TodoClient{Host: "http://localhost:8080"}
	todo, _ := client.CreateTodo("foo", "bar")

	// when
	todo.Status = "doing"
	todo.Title = "baz"
	todo.Description = "bing"
	_, err := client.UpdateTodo(todo)

	// then
	if err != nil {
		t.Error(err)
	}

	todoResult, _ := client.GetTodo(todo.Id)

	if !reflect.DeepEqual(todo, todoResult) {
		t.Error("returned todo not updated")
	}

	// cleanup
	_ = client.DeleteTodo(todo.Id)
}
開發者ID:yonglehou,項目名稱:go-todo,代碼行數:26,代碼來源:update_test.go

示例2: TestGetNotFoundTodo

func TestGetNotFoundTodo(t *testing.T) {

	// given
	client := client.TodoClient{Host: "http://localhost:8080"}
	id := int32(3)

	// when
	_, err := client.GetTodo(id)

	// then
	if err == nil {
		t.Error(err)
	}
}
開發者ID:yonglehou,項目名稱:go-todo,代碼行數:14,代碼來源:get_test.go

示例3: TestDeleteTodo

func TestDeleteTodo(t *testing.T) {

	// given
	client := client.TodoClient{Host: "http://localhost:8080"}
	todo, _ := client.CreateTodo("foo", "bar")
	id := todo.Id

	// when
	err := client.DeleteTodo(id)

	// then
	if err != nil {
		t.Error(err)
	}

	_, err = client.GetTodo(id)
	if err == nil {
		t.Error(err)
	}
}
開發者ID:yonglehou,項目名稱:go-todo,代碼行數:20,代碼來源:delete_test.go

示例4: TestGetTodo

func TestGetTodo(t *testing.T) {

	// given
	client := client.TodoClient{Host: "http://localhost:8080"}
	todo, _ := client.CreateTodo("foo", "bar")
	id := todo.Id

	// when
	todo, err := client.GetTodo(id)

	// then
	if err != nil {
		t.Error(err)
	}

	if todo.Title != "foo" && todo.Description != "bar" {
		t.Error("returned todo not right")
	}

	// cleanup
	_ = client.DeleteTodo(todo.Id)
}
開發者ID:yonglehou,項目名稱:go-todo,代碼行數:22,代碼來源:get_test.go

示例5: TestUpdateTodosStatus

func TestUpdateTodosStatus(t *testing.T) {

	// given
	client := client.TodoClient{Host: "http://localhost:8080"}
	todo, _ := client.CreateTodo("foo", "bar")

	// when
	_, err := client.UpdateTodoStatus(todo.Id, api.DoingStatus)

	// then
	if err != nil {
		t.Error(err)
	}

	todoResult, _ := client.GetTodo(todo.Id)

	if todoResult.Status != "doing" {
		t.Error("returned todo status not updated")
	}

	// cleanup
	_ = client.DeleteTodo(todo.Id)
}
開發者ID:yonglehou,項目名稱:go-todo,代碼行數:23,代碼來源:update_test.go

示例6: main


//.........這裏部分代碼省略.........

				host := c.GlobalString("host")

				client := client.TodoClient{Host: host}

				todos, err := client.GetAllTodos()
				if err != nil {
					log.Fatal(err)
					return
				}
				for _, todo := range todos {
					fmt.Printf("%+v\n", todo)
				}
			},
		},
		{
			Name:  "doing",
			Usage: "(id) update a todo status to 'doing'",
			Action: func(c *cli.Context) {
				idStr := c.Args().Get(0)
				id, err := strconv.Atoi(idStr)
				if err != nil {
					log.Print(err)
					return
				}

				host := c.GlobalString("host")

				client := client.TodoClient{Host: host}

				todo, err := client.UpdateTodoStatus(int32(id), "doing")
				if err != nil {
					log.Fatal(err)
					return
				}
				fmt.Printf("%+v\n", todo)
			},
		},
		{
			Name:  "done",
			Usage: "(id) update a todo status to 'done'",
			Action: func(c *cli.Context) {
				idStr := c.Args().Get(0)
				id, err := strconv.Atoi(idStr)
				if err != nil {
					log.Print(err)
					return
				}

				host := c.GlobalString("host")

				client := client.TodoClient{Host: host}

				todo, err := client.UpdateTodoStatus(int32(id), "done")
				if err != nil {
					log.Fatal(err)
					return
				}
				fmt.Printf("%+v\n", todo)
			},
		},
		{
			Name:  "save",
			Usage: "(id title description) update a todo title and description",
			Action: func(c *cli.Context) {
				idStr := c.Args().Get(0)
				id, err := strconv.Atoi(idStr)
				if err != nil {
					log.Print(err)
					return
				}
				title := c.Args().Get(1)
				desc := c.Args().Get(2)

				host := c.GlobalString("host")

				client := client.TodoClient{Host: host}

				todo, err := client.GetTodo(int32(id))
				if err != nil {
					log.Fatal(err)
					return
				}

				todo.Title = title
				todo.Description = desc

				todo2, err := client.UpdateTodo(todo)
				if err != nil {
					log.Fatal(err)
					return
				}

				fmt.Printf("%+v\n", todo2)
			},
		},
	}
	app.Run(os.Args)

}
開發者ID:FabianFrancoRoldan,項目名稱:go-todo,代碼行數:101,代碼來源:todo_cli.go


注:本文中的github.com/benschw/go-todo/client.TodoClient.GetTodo方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。