public void BasicInputExample_Works() { var schemaGenerator = new SchemaGenerator(new MockServiceProvider()); var schema = schemaGenerator.CreateSchema(typeof(GenericsSchema)); var query = @" { echoGenerics( int1:{data:2} string1:{data:""test""}, ) {data} } "; var expected = @"{ echoGenerics: { data: ""2test"" } }"; GraphAssert.QuerySuccess(schema, query, expected); }
public void GetTimeZoneOffset_IsSafe() { var schemaGenerator = new SchemaGenerator(new MockServiceProvider()); var schema = schemaGenerator.CreateSchema(typeof(DateSchema)); var query = @" {dates(dates:{offset:""2013-07-02T09:00:00-06:00"", dateTime:""2013-07-02T09:00-06:00""}) { offset dateTime dateUTC }} "; var expected = @"{ dates: { offset:""2013-07-02T09:00:00-06:00"", dateTime:""2013-07-02T09:00:00-06:00"", dateUTC:""2013-07-02T15:00:00Z"" } }"; GraphAssert.QuerySuccess(schema, query, expected); }
public void AdvancedExample_WithEnums_Works() { var schemaGenerator = new SchemaGenerator(new MockServiceProvider()); var schema = schemaGenerator.CreateSchema(typeof(EchoStateSchema)); var query = @" mutation SetState{ set (request:{state:Open, data:2}){ state data } } "; var expected = @"{ set: { state: ""Open"", data: 2 } }"; GraphAssert.QuerySuccess(schema, query, expected); }
public void SetAdvancedString_WithStringParam_Works(string var1, string var2) { var schemaGenerator = new SchemaGenerator(new MockServiceProvider()); var schema = schemaGenerator.CreateSchema(typeof(EchoStateSchema)); var query = @" mutation SetState($str:" + var1 + @", $str2:" + var2 + @"){ set:setAdvancedString(request:{requiredString:$str, notRequiredString:$str2}){ requiredString notRequiredString } } "; var expected = @"{ set: { requiredString:""Yes"", notRequiredString: """" } }"; GraphAssert.QuerySuccess(schema, query, expected, "{str:\"Yes\", str2:\"\"}"); }
public void SetAdvanced_WithSameQuery_WorksBackwardsCompatible() { var schemaGenerator = new SchemaGenerator(new MockServiceProvider()); var schema = schemaGenerator.CreateSchema(typeof(EchoStateSchema)); var query = @" mutation SetState{ set:setAdvanced(request:{decimal:24.15, data:2}){ data state } } "; var expected = @"{ set: { data: 2, state: ""Open"" } }"; GraphAssert.QuerySuccess(schema, query, expected); }
public void GetNullDecimalAsVariable_IsSafe() { var schemaGenerator = new SchemaGenerator(new MockServiceProvider()); var schema = schemaGenerator.CreateSchema(typeof(EchoSchema)); var query = @" query($ts:Decimal!) { testRequest(request:{decimal:$ts}){decimalValue} } "; var variables = @"{ ts:1.23 }"; var expected = @"{ testRequest: { decimalValue:1.23 } }"; GraphAssert.QuerySuccess(schema, query, expected, variables); }