Beispiel #1
0
        public void GetJobs_MixedCasing_ReturnsJob()
        {
            string arrangeSql = @"
                insert into """ + ConnectionUtils.GetSchemaName() + @""".""job"" (""invocationdata"", ""arguments"", ""createdat"")
                values (@invocationData, @arguments, now() at time zone 'utc') returning ""id""";

            var job            = Job.FromExpression(() => SampleMethod("Hello"));
            var invocationData = InvocationData.Serialize(job);

            UseConnection(sql =>
            {
                var jobId = sql.Query(arrangeSql,
                                      new
                {
                    invocationData = JobHelper.ToJson(invocationData),
                    arguments      = invocationData.Arguments,
                }).Single().id.ToString();

                var state = new Mock <IState>();
                state.Setup(x => x.Name).Returns(SucceededState.StateName);
                state.Setup(x => x.SerializeData())
                .Returns(new Dictionary <string, string>
                {
                    { "SUCCEEDEDAT", "2018-05-03T13:28:18.3939693Z" },
                    { "PerformanceDuration", "53" },
                    { "latency", "6730" }
                });

                Commit(sql, x => x.SetJobState(jobId, state.Object));

                var monitoringApi = _storage.GetMonitoringApi();
                var jobs          = monitoringApi.SucceededJobs(0, 10);

                Assert.NotNull(jobs);
            });
        }
Beispiel #2
0
 private static string GetSchemaName()
 {
     return(ConnectionUtils.GetSchemaName());
 }
Beispiel #3
0
 private NpgsqlConnection CreateConnection()
 {
     return(ConnectionUtils.CreateConnection());
 }
Beispiel #4
0
 private PostgreSqlStorage CreateStorage()
 {
     return(new PostgreSqlStorage(
                ConnectionUtils.GetConnectionString(),
                _options));
 }
Beispiel #5
0
 private static string GetSchemaName() => ConnectionUtils.GetSchemaName();
        private CountersAggregationManager CreateManager()
        {
            var connectionProvider = ConnectionUtils.GetConnectionProvider();

            return(new CountersAggregationManager(connectionProvider, TimeSpan.FromSeconds(1)));
        }
 public PostgreSqlFetchedJobFacts()
 {
     _options = new PostgreSqlStorageOptions();
     _storage = new PostgreSqlStorage(ConnectionUtils.GetConnectionString());
 }
Beispiel #8
0
        private static JobQueue CreateJobQueue()
        {
            var provider = ConnectionUtils.GetConnectionProvider();

            return(new JobQueue(provider, new PostgreSqlStorageOptions()));
        }
Beispiel #9
0
 private static DefaultConnectionProvider CreateProvider() => new DefaultConnectionProvider(ConnectionUtils.GetConnectionString());
Beispiel #10
0
        public static void CleanTables(NpgsqlConnection connection)
        {
            if (connection == null)
            {
                throw new ArgumentNullException(nameof(connection));
            }

            string script = null;


            script = GetStringResource(
                typeof(PostgreSqlTestObjectsInitializer).GetTypeInfo().Assembly,
                "Hangfire.PostgreSql.Tests.Clean.sql").Replace("'hangfire'", string.Format("'{0}'", ConnectionUtils.GetSchemaName()));

            //connection.Execute(script);

            using (var transaction = connection.BeginTransaction(IsolationLevel.Serializable))
                using (var command = new NpgsqlCommand(script, connection, transaction))
                {
                    command.CommandTimeout = 120;
                    try
                    {
                        command.ExecuteNonQuery();
                        transaction.Commit();
                    }
                    catch (NpgsqlException)
                    {
                        throw;
                    }
                }
        }
Beispiel #11
0
 private static ExpirationManager CreateManager() => new ExpirationManager(ConnectionUtils.GetConnectionProvider(), TimeSpan.Zero);
Beispiel #12
0
 private static NpgsqlConnection CreateConnection() => ConnectionUtils.CreateNpgConnection();
Beispiel #13
0
 public ExpirationManagerFacts()
 {
     _storage = new PostgreSqlStorage(ConnectionUtils.GetConnectionString());
     _token   = new CancellationToken(true);
 }
Beispiel #14
0
 private PostgreSqlStorage CreateStorage()
 => new PostgreSqlStorage(ConnectionUtils.GetConnectionString(), _options);