本文整理汇总了Golang中github.com/emicklei/forest.Path函数的典型用法代码示例。如果您正苦于以下问题:Golang Path函数的具体用法?Golang Path怎么用?Golang Path使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了Path函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: TestAPI
func TestAPI(t *testing.T) {
go main()
api := forest.NewClient("http://localhost:8888", new(http.Client))
r := api.POST(t, forest.Path("/api/shorten").Body("https://github.com/stefanteixeira"))
r2 := api.POST(t, forest.Path("/api/shorten").Body("https://github.com/stefanteixeira"))
assert.Equal(t, r.StatusCode, 201)
assert.Equal(t, r2.StatusCode, 200)
}
开发者ID:stefanteixeira,项目名称:learning-go,代码行数:11,代码来源:shortener_api_test.go
示例2: TestForestCreateOrderInvalidTime
func TestForestCreateOrderInvalidTime(t *testing.T) {
invalidTimes := []uint64{
// 0, // valid
// uint64(time.Now().UTC().Unix()), // valid
uint64(time.Now().UTC().Add(-(engine.PastTimeTreshold + time.Second)).Unix()),
}
for _, invalidTime := range invalidTimes {
payload := data.Order{
Time: invalidTime,
}
got := Error{}
r := getForestClient().POST(t, forest.Path("/orders/{}", "").Content(payload, MimeJSON))
// TODO:
// forest.ExpectStatus(t, r, http.StatusBadRequest)
forest.ExpectStatus(t, r, http.StatusInternalServerError)
forest.ExpectJSONDocument(t, r, &got)
if got.Message == "" {
t.Error("Got empty error message")
}
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:31,代码来源:order_forest_test.go
示例3: TestForestListOrders
func TestForestListOrders(t *testing.T) {
expected := []data.Order{}
for i := 1; i <= 3; i++ {
_time := uint64(time.Now().UTC().Unix())
order := data.Order{
Time: _time,
}
createOrder(&order)
// newest come first:
expected = append([]data.Order{order}, expected...)
}
got := []data.Order{}
r := getForestClient().GET(t, forest.Path("/orders/{}", "").Query("limit", len(expected)))
forest.ExpectStatus(t, r, http.StatusOK)
forest.ExpectJSONDocument(t, r, &got)
if !reflect.DeepEqual(got, expected) {
t.Errorf("Got: %s\n\nExpected: %s", testutils.JSON(got), testutils.JSON(expected))
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:32,代码来源:order_forest_test.go
示例4: TestForestRemoveOrderItemNonExisting
func TestForestRemoveOrderItemNonExisting(t *testing.T) {
product := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: 100,
},
}
createProduct(&product)
order := data.Order{}
createOrder(&order)
got := Error{}
r := getForestClient().DELETE(t, forest.Path("/orders/{orderID}/items/{productID}", order.ID, product.ID))
// TODO:
// forest.ExpectStatus(t, r, http.StatusNotFound)
forest.ExpectStatus(t, r, http.StatusInternalServerError)
forest.ExpectJSONDocument(t, r, &got)
if got.Message == "" {
t.Error("Got empty error message")
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:31,代码来源:order_item_forest_test.go
示例5: TestForestOrderItemCreateNonExistingProduct
func TestForestOrderItemCreateNonExistingProduct(t *testing.T) {
nonExistingProductID := uint64(1000000) // TODO
order := data.Order{}
createOrder(&order)
payload := data.OrderItem{
Product: data.Product{
ID: nonExistingProductID,
},
Quantity: 1,
}
got := Error{}
r := getForestClient().POST(t, forest.Path("/orders/{orderID}/items/{}", order.ID, "").Content(payload, MimeJSON))
// TODO:
// forest.ExpectStatus(t, r, http.StatusNotFound)
forest.ExpectStatus(t, r, http.StatusInternalServerError)
forest.ExpectJSONDocument(t, r, &got)
if got.Message == "" {
t.Error("Got empty error message")
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:30,代码来源:order_item_forest_test.go
示例6: TestForestRemoveOrderItem
func TestForestRemoveOrderItem(t *testing.T) {
product := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: 100,
},
}
createProduct(&product)
order := data.Order{
Items: []data.OrderItem{
data.OrderItem{
Product: product,
Quantity: 1,
},
},
}
createOrder(&order)
r := getForestClient().DELETE(t, forest.Path("/orders/{orderID}/items/{itemID}", order.ID, product.ID))
forest.ExpectStatus(t, r, http.StatusNoContent)
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:28,代码来源:order_item_forest_test.go
示例7: TestForestUpdateOrder
func TestForestUpdateOrder(t *testing.T) {
_time := uint64(time.Now().UTC().Unix())
_newTime := _time + 300 // 5 min
order := data.Order{
Time: _time,
}
createOrder(&order)
expected := order
expected.Time = _newTime
payload := data.Order{
Time: _newTime,
}
got := data.Order{}
r := getForestClient().PUT(t, forest.Path("/orders/{id}", order.ID).Content(payload, MimeJSON))
forest.ExpectStatus(t, r, http.StatusOK)
forest.ExpectJSONDocument(t, r, &got)
expected.ID = got.ID
if !reflect.DeepEqual(got, expected) {
t.Errorf("Got: %s\n\nExpected: %s", testutils.JSON(got), testutils.JSON(expected))
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:34,代码来源:order_forest_test.go
示例8: TestForestUpdateOrderDraftCancelled
func TestForestUpdateOrderDraftCancelled(t *testing.T) {
order := data.Order{}
createOrder(&order)
expected := order
expected.State = data.OrderStateCancelled
payload := data.Order{
State: data.OrderStateCancelled,
}
got := data.Order{}
r := getForestClient().PUT(t, forest.Path("/orders/{id}", order.ID).Content(payload, MimeJSON))
forest.ExpectStatus(t, r, http.StatusOK)
forest.ExpectJSONDocument(t, r, &got)
expected.ID = got.ID
if !reflect.DeepEqual(got, expected) {
t.Errorf("Got: %s\n\nExpected: %s", testutils.JSON(got), testutils.JSON(expected))
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:29,代码来源:order_forest_test.go
示例9: TestForestCreateOrder
func TestForestCreateOrder(t *testing.T) {
_time := uint64(time.Now().UTC().Unix())
expected := data.Order{
State: data.OrderStateDraft,
Time: _time,
}
populate.Order(&expected)
payload := data.Order{
Time: _time,
}
got := data.Order{}
r := getForestClient().POST(t, forest.Path("/orders/{}", "").Content(payload, MimeJSON))
forest.ExpectStatus(t, r, http.StatusCreated)
forest.ExpectJSONDocument(t, r, &got)
expected.ID = got.ID
if !reflect.DeepEqual(got, expected) {
t.Errorf("Got: %s\n\nExpected: %s", testutils.JSON(got), testutils.JSON(expected))
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:29,代码来源:order_forest_test.go
示例10: TestForestOrderItemCreateOrderPlaced
func TestForestOrderItemCreateOrderPlaced(t *testing.T) {
productInOrder := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: 100,
},
}
createProduct(&productInOrder)
product := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: 100,
},
}
createProduct(&product)
order := data.Order{
Items: []data.OrderItem{
data.OrderItem{
Product: productInOrder,
Quantity: 1,
},
},
}
createOrder(&order)
order.State = data.OrderStatePlaced
updateOrder(&order)
payload := data.OrderItem{
Product: data.Product{
ID: product.ID,
},
Quantity: 0,
}
got := Error{}
r := getForestClient().POST(t, forest.Path("/orders/{orderID}/items/{}", order.ID, "").Content(payload, MimeJSON))
// TODO:
// forest.ExpectStatus(t, r, http.StatusForbidden)
forest.ExpectStatus(t, r, http.StatusInternalServerError)
forest.ExpectJSONDocument(t, r, &got)
if got.Message == "" {
t.Error("Got empty error message")
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:59,代码来源:order_item_forest_test.go
示例11: TestForestCreateOrderWithItems
func TestForestCreateOrderWithItems(t *testing.T) {
_time := uint64(time.Now().UTC().Unix())
expected := data.Order{
State: data.OrderStateDraft,
Time: _time,
}
payload := data.Order{
Time: _time,
}
for i := 1; i <= 3; i++ {
product := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: uint64(100 * i),
},
}
createProduct(&product)
item := data.OrderItem{
Product: product,
Quantity: uint64(i),
}
// newest come first:
payload.Items = append([]data.OrderItem{item}, payload.Items...)
expected.Items = append([]data.OrderItem{item}, expected.Items...)
}
populate.Order(&expected)
got := data.Order{}
r := getForestClient().POST(t, forest.Path("/orders/{}", "").Content(payload, MimeJSON))
forest.ExpectStatus(t, r, http.StatusCreated)
forest.ExpectJSONDocument(t, r, &got)
expected.ID = got.ID
if !reflect.DeepEqual(got, expected) {
t.Errorf("Got: %s\n\nExpected: %s", testutils.JSON(got), testutils.JSON(expected))
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:53,代码来源:order_forest_test.go
示例12: TestForestOrderItemUpdate
func TestForestOrderItemUpdate(t *testing.T) {
product := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: 100,
},
}
createProduct(&product)
order := data.Order{
Items: []data.OrderItem{
data.OrderItem{
Product: product,
Quantity: 1,
},
},
}
createOrder(&order)
expected := data.OrderItem{
Product: product,
Quantity: 20,
}
populate.OrderItem(&expected)
payload := data.OrderItem{
Product: data.Product{
ID: product.ID,
},
Quantity: 20,
}
got := data.OrderItem{}
r := getForestClient().PUT(t, forest.Path("/orders/{orderID}/items/{productID}", order.ID, product.ID).Content(payload, MimeJSON))
forest.ExpectStatus(t, r, http.StatusOK)
forest.ExpectJSONDocument(t, r, &got)
if !reflect.DeepEqual(got, expected) {
t.Errorf("Got: %s\n\nExpected: %s", testutils.JSON(got), testutils.JSON(expected))
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:49,代码来源:order_item_forest_test.go
示例13: TestForestUpdateOrderDraftPlaced
func TestForestUpdateOrderDraftPlaced(t *testing.T) {
product := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: 100,
},
}
createProduct(&product)
order := data.Order{
Items: []data.OrderItem{
data.OrderItem{
Product: product,
Quantity: 1,
},
},
}
createOrder(&order)
expected := order
expected.State = data.OrderStatePlaced
payload := data.Order{
State: data.OrderStatePlaced,
}
got := data.Order{}
r := getForestClient().PUT(t, forest.Path("/orders/{id}", order.ID).Content(payload, MimeJSON))
forest.ExpectStatus(t, r, http.StatusOK)
forest.ExpectJSONDocument(t, r, &got)
expected.ID = got.ID
if !reflect.DeepEqual(got, expected) {
t.Errorf("Got: %s\n\nExpected: %s", testutils.JSON(got), testutils.JSON(expected))
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:46,代码来源:order_forest_test.go
示例14: TestForestLoadOrderNonExisting
func TestForestLoadOrderNonExisting(t *testing.T) {
nonExistingOrderID := 1000000 // TODO
got := Error{}
r := getForestClient().GET(t, forest.Path("/orders/{id}", nonExistingOrderID))
// TODO:
// forest.ExpectStatus(t, r, http.StatusNotFound)
forest.ExpectStatus(t, r, http.StatusInternalServerError)
forest.ExpectJSONDocument(t, r, &got)
if got.Message == "" {
t.Error("Got empty error message")
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:19,代码来源:order_forest_test.go
示例15: TestForestListOrderItems
func TestForestListOrderItems(t *testing.T) {
order := data.Order{}
for i := 1; i <= 3; i++ {
product := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: 100,
},
}
createProduct(&product)
item := data.OrderItem{
Product: product,
Quantity: 1,
}
order.Items = append([]data.OrderItem{item}, order.Items...)
}
createOrder(&order)
expected := order.Items
got := []data.OrderItem{}
r := getForestClient().GET(t, forest.Path("/orders/{orderID}/items/{}", order.ID, "").Query("limit", len(expected)))
forest.ExpectStatus(t, r, http.StatusOK)
forest.ExpectJSONDocument(t, r, &got)
if !reflect.DeepEqual(got, expected) {
t.Errorf("Got: %s\n\nExpected: %s", testutils.JSON(got), testutils.JSON(expected))
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:42,代码来源:order_item_forest_test.go
示例16: TestForestOrderItemUpdateNonExisting
func TestForestOrderItemUpdateNonExisting(t *testing.T) {
product := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: 100,
},
}
createProduct(&product)
order := data.Order{}
createOrder(&order)
payload := data.OrderItem{
Product: data.Product{
ID: product.ID,
},
Quantity: 20,
}
got := Error{}
r := getForestClient().PUT(t, forest.Path("/orders/{orderID}/items/{productID}", order.ID, product.ID).Content(payload, MimeJSON))
// TODO:
// forest.ExpectStatus(t, r, http.StatusNotFound)
forest.ExpectStatus(t, r, http.StatusInternalServerError)
forest.ExpectJSONDocument(t, r, &got)
if got.Message == "" {
t.Error("Got empty error message")
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:38,代码来源:order_item_forest_test.go
示例17: TestForestLoadOrder
func TestForestLoadOrder(t *testing.T) {
_time := uint64(time.Now().UTC().Unix())
expected := data.Order{
Time: _time,
}
createOrder(&expected)
got := data.Order{}
r := getForestClient().GET(t, forest.Path("/orders/{id}", expected.ID))
forest.ExpectStatus(t, r, http.StatusOK)
forest.ExpectJSONDocument(t, r, &got)
if !reflect.DeepEqual(got, expected) {
t.Errorf("Got: %s\n\nExpected: %s", testutils.JSON(got), testutils.JSON(expected))
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:23,代码来源:order_forest_test.go
示例18: TestForestCreateOrderInvalidState
func TestForestCreateOrderInvalidState(t *testing.T) {
invalidStates := []string{
// "", // valid
// data.OrderStateDraft, // valid
data.OrderStatePlaced,
data.OrderStateCancelled,
"UNKNOWN",
}
for _, invalidState := range invalidStates {
_time := uint64(time.Now().UTC().Unix())
payload := data.Order{
State: invalidState,
Time: _time,
}
got := Error{}
r := getForestClient().POST(t, forest.Path("/orders/{}", "").Content(payload, MimeJSON))
// TODO:
// forest.ExpectStatus(t, r, http.StatusBadRequest)
forest.ExpectStatus(t, r, http.StatusInternalServerError)
forest.ExpectJSONDocument(t, r, &got)
if got.Message == "" {
t.Error("Got empty error message")
}
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:36,代码来源:order_forest_test.go
示例19: TestForestCreateOrderInvalidItems
func TestForestCreateOrderInvalidItems(t *testing.T) {
_time := uint64(time.Now().UTC().Unix())
product := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: 100,
},
}
invalidOrderItemSets := [][]data.OrderItem{
// non-existing products:
[]data.OrderItem{
data.OrderItem{
Product: data.Product{
ID: 1000000, // TODO
},
Quantity: 1,
},
},
// duplicated products:
[]data.OrderItem{
data.OrderItem{
Product: data.Product{
ID: product.ID,
},
Quantity: 1,
},
data.OrderItem{
Product: data.Product{
ID: product.ID,
},
Quantity: 1,
},
},
// zero quantity:
[]data.OrderItem{
data.OrderItem{
Product: data.Product{
ID: product.ID,
},
Quantity: 0,
},
},
}
for _, invalidOrderItemSet := range invalidOrderItemSets {
payload := data.Order{
Time: _time,
Items: invalidOrderItemSet,
}
got := Error{}
r := getForestClient().POST(t, forest.Path("/orders/{}", "").Content(payload, MimeJSON))
// TODO:
// forest.ExpectStatus(t, r, http.StatusBadRequest)
forest.ExpectStatus(t, r, http.StatusInternalServerError)
forest.ExpectJSONDocument(t, r, &got)
if got.Message == "" {
t.Error("Got empty error message")
}
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:72,代码来源:order_forest_test.go
示例20: TestForestUpdateOrderInvalidStateTransition
func TestForestUpdateOrderInvalidStateTransition(t *testing.T) {
invalidTransitions := [][2]string{
// [2]string{data.OrderStateDraft, data.OrderStatePlaced}, // valid
// [2]string{data.OrderStateDraft, data.OrderStateCancelled}, // valid
[2]string{data.OrderStatePlaced, data.OrderStateDraft},
[2]string{data.OrderStatePlaced, data.OrderStateCancelled},
[2]string{data.OrderStateCancelled, data.OrderStateDraft},
[2]string{data.OrderStateCancelled, data.OrderStatePlaced},
[2]string{data.OrderStateDraft, "UNKNOWN"},
[2]string{data.OrderStatePlaced, "UNKNOWN"},
[2]string{data.OrderStateCancelled, "UNKNOWN"},
}
product := data.Product{
Name: generateName("Product"),
Price: data.Price{
Vat: 20,
Net: 100,
},
}
createProduct(&product)
for _, invalidTransition := range invalidTransitions {
fromState, toState := invalidTransition[0], invalidTransition[1]
order := data.Order{
Items: []data.OrderItem{
data.OrderItem{
Product: product,
Quantity: 1,
},
},
}
createOrder(&order)
if fromState != order.State {
order.State = fromState
updateOrder(&order)
}
payload := data.Order{
State: toState,
}
got := Error{}
r := getForestClient().PUT(t, forest.Path("/orders/{id}", order.ID).Content(payload, MimeJSON))
// TODO:
// forest.ExpectStatus(t, r, http.StatusBadRequest)
forest.ExpectStatus(t, r, http.StatusInternalServerError)
forest.ExpectJSONDocument(t, r, &got)
if got.Message == "" {
t.Error("Got empty error message")
}
}
}
开发者ID:mxmCherry,项目名称:goshop,代码行数:65,代码来源:order_forest_test.go
注:本文中的github.com/emicklei/forest.Path函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论