亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何禁用測試的耳鼻喉隱私設置?

如何禁用測試的耳鼻喉隱私設置?

Go
神不在的星期二 2022-11-08 15:59:21
我設置了一個 graphql 應用程序,它使用 ent 作為 ORM 和 firebase。使用 ent,我添加了隱私規則來驗證哪些用戶可以訪問某些 graphql 方法。現在我想編寫測試,但由于以下錯誤,我無法使用某些 graphql 方法:viewer is missing: ent/privacy: deny rule有沒有辦法在運行時禁用隱私規則進行測試?
查看完整描述

1 回答

?
德瑪西亞99

TA貢獻1770條經驗 獲得超3個贊

測試時,使用以下參數創建客戶端:


// WithContext defines a client.Option to pass context.

func WithContext(ctx context.Context) client.Option {

    return client.Option(func(r *client.Request) {

        r.HTTP = r.HTTP.WithContext(ctx)

    })

}


func TestGraphql(t *testing.T) {

    opts := []enttest.Option{

        enttest.WithOptions(ent.Log(t.Log)),

        enttest.WithMigrateOptions(migrate.WithGlobalUniqueID(true)),

    }

    entClient := enttest.Open(t, "sqlite3", "file:ent?mode=memory&cache=shared&_fk=1", opts...)


    handler := handler.NewDefaultServer(gql.NewSchema(entClient, &trustly.Client{}))

    handler.Use(entgql.Transactioner{TxOpener: entClient})


    defer entClient.Close()


    err := c.Post(`query{}....`, &output, WithContext(privacy.DecisionContext(context.Background(), privacy.Allow)))


}


查看完整回答
反對 回復 2022-11-08
  • 1 回答
  • 0 關注
  • 120 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號