Ejemplo n.º 1
0
        public GenericTimeType GetTimeSeriesPeriode(
            TimeSeriesPeriodeInput input,
            [Service] ITimeSeriesRepository repo
            )
        {
            var queryString = TimeSeriesQueryBuilder.CreateTimeSeriesPeriodeQueryString(input.SensorId, input.TableName);

            return(repo.GetTimeSeriesPeriode(queryString).Result);
        }
        public async Task TestTimeSeriesPeriode()
        {
            IServiceProvider serviceProvider =
                new ServiceCollection()
                .AddSingleton <ITimeSeriesRepository, TimeSeriesRepository>()
                .AddSingleton <IDatabaseConfig>(sp =>
                                                new DatabaseConfig()
            {
                DatabaseConnectionString = dbConnectionString
            }
                                                )
                .BuildServiceProvider();

            IQueryExecutor executor = Schema.Create(c =>
            {
                c.RegisterQueryType(new ObjectType <TimeSeriesQuery>(d => d.Name("Query")));
                c.RegisterType <GenericObject>();
            })
                                      .MakeExecutable();

            var input = new TimeSeriesPeriodeInput()
            {
                TableName = "airsaturation_percent_",
                SensorId  = 2
            };

            IReadOnlyQueryRequest request =
                QueryRequestBuilder.New()
                .SetQuery(@"query timeSeriesPeriode($input: TimeSeriesPeriodeInput){
                              timeSeriesPeriode(input: $input) {
                                from,
                                to
                              }
                            }")
                .SetServices(serviceProvider)
                .AddVariableValue("input", input)
                .Create();

            // act
            IExecutionResult result = await executor.ExecuteAsync(request);

            //Snapshot.Match(result);
            result.MatchSnapshot();
        }