Comments (1)
Never mind... this actually works as expected:
func TestFragment(t *testing.T) {
type myerror struct {
Message graphql.String
Type struct {
Class graphql.String
ErrorTypeInvalidRequest struct {
Fields []struct {
Field graphql.String
Message graphql.String
}
} `graphql:"... on ErrorTypeInvalidRequest"`
}
}
type query struct {
Error myerror
}
var got query
err := jsonutil.UnmarshalGraphQL([]byte(`{
"error": {
"message": "Invalid limit",
"type": {
"class": "INVALID_REQUEST",
"fields": [
{
"field": "limit",
"message": "0 is not between the allowed limit of 1 to 50"
}
]
}
}
}`), &got)
if err != nil {
t.Fatal(err)
}
var want query
want.Error = myerror{
Message: "Invalid limit",
Type: struct{Class graphql.String; ErrorTypeInvalidRequest struct{Fields []struct{Field graphql.String; Message graphql.String}} "graphql:\"... on ErrorTypeInvalidRequest\""}{
Class: "INVALID_REQUEST",
ErrorTypeInvalidRequest: struct{Fields []struct{Field graphql.String; Message graphql.String}}{
Fields: []struct{Field graphql.String; Message graphql.String}{
{"limit", "0 is not between the allowed limit of 1 to 50"},
},
},
},
}
if !reflect.DeepEqual(got, want) {
t.Error("not equal")
}
}
This test will run ok.
Delve did not let me inspect Type
struct, so I thought it would not unmarshall...
from graphql.
Related Issues (20)
- query with circular dependencies leads to infinite recursion HOT 1
- Any interest in native go type support? HOT 1
- I want to add where condition in the query structure, how to do this
- How to define struct HOT 3
- Query and Mutation methods ignore query content when it's wrapped in an interface HOT 3
- Support uuid type HOT 1
- Help: Unable to unmarshal server reply containing a map into `map[string]interface{}` HOT 4
- "Variable \\\"$evar\\\" is never used. HOT 2
- [Feature reqeust] Add possiblity to load query from string / .gql file HOT 4
- Question: How to implement an enumeration type HOT 1
- Question: Example of doing pagination (especially on nested resources that are paginated) HOT 6
- Nested struct tag not applied to query HOT 2
- Using alternative rest clients
- OAuth2 Bearer Token with Customer HttpClient HOT 1
- Please make "constructQuery" exported HOT 3
- Allow building mutations from maps instead of structs
- I love this library but it seems unmaintained? HOT 1
- FaunaDB graphql _id defined as _ID not exported HOT 4
- Message: x-hasura-admin-secret but not found,
- Return more verbose error to the caller HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from graphql.