public void ConfigureField(ComplexGraphType <TModel> graphType, GraphTypeCache cache, IServiceCollection services) { FieldType field; if (TryGetScalarGraphType(out var graphQlType)) { AuthResolver.ValidateGraphqlType(graphQlType, Property); field = new FieldType { Type = graphQlType, Name = Property.Name, Resolver = AuthResolver.GetResolver(services, NameFieldResolver.Instance) }; } else { if (ResolverConfiguration == null) { throw new UnableToResolveException(Property, typeof(TModel)); } field = ResolverConfiguration.ConfigureField(Property, cache, services); field.Resolver = AuthResolver.GetResolver(services, field.Resolver); } var descAttr = Property.GetCustomAttribute <DescriptionAttribute>(); field.Description = descAttr?.Description; var isOutputType = field.Type?.IsOutputType(); var isOutputGraphType = field.ResolvedType?.IsOutputType(); graphType.AddField(field); }
public void AuthResolverGetsNoAuth() { var patient = _context.Patients.Find(1865); // aetna insurance var hours = new Domain2.Hours.Hours(); hours.Case = patient.ActiveCase; hours.Provider = patient.ActiveCase.GetProvidersAtDate(DateTime.Now).First().Provider; hours.Date = DateTime.Now; hours.Service = _context.Services.Where(x => x.Code == "TM").First(); hours.ServiceID = hours.Service.ID; hours.TotalHours = 1.5M; var resolver = new AuthResolver(hours); var sut = resolver.GetAuthorizationBreakdowns(); Assert.IsNull(sut); }