Beispiel #1
0
        public SqlCommandStoreEmptyWhenSearchedTests()
        {
            _mysqlTestHelper = new MySqlTestHelper();
            _mysqlTestHelper.SetupCommandDb();

            _mysqlCommandStore = new MySqlCommandStore(_mysqlTestHelper.CommandStoreConfiguration);
            _contextKey        = "test-context";
        }
Beispiel #2
0
        public SqlInboxEmptyWhenSearchedTests()
        {
            _mysqlTestHelper = new MySqlTestHelper();
            _mysqlTestHelper.SetupCommandDb();

            _mysqlInBox = new MySqlInbox(_mysqlTestHelper.InboxConfiguration);
            _contextKey = "test-context";
        }
Beispiel #3
0
 public MySqlOutboxEmptyStoreAsyncTests()
 {
     _mySqlTestHelper = new MySqlTestHelper();
     _mySqlTestHelper.SetupMessageDb();
     _mySqlOutboxSync = new MySqlOutboxSync(_mySqlTestHelper.OutboxConfiguration);
     _messageEarliest = new Message(new MessageHeader(Guid.NewGuid(), "test_topic", MessageType.MT_DOCUMENT),
                                    new MessageBody("message body"));
 }
        public MySqlOutboxMessageAlreadyExistsAsyncTests()
        {
            _msSqlTestHelper = new MySqlTestHelper();
            _msSqlTestHelper.SetupMessageDb();

            _sqlOutbox       = new MySqlOutbox(_msSqlTestHelper.OutboxConfiguration);
            _messageEarliest = new Message(new MessageHeader(Guid.NewGuid(), "test_topic", MessageType.MT_DOCUMENT), new MessageBody("message body"));
        }
 private static IEnumerable <SagaSnapshot> QuerySagaSnaps()
 {
     return(MySqlTestHelper
            .Query <SagaSnapshot>($@"
             SELECT 
                 id,
                 revision
             FROM {TableName}"));
 }
Beispiel #6
0
 public MySqlOutboxRangeRequestAsyncTests()
 {
     _mySqlTestHelper = new MySqlTestHelper();
     _mySqlTestHelper.SetupMessageDb();
     _mySqlOutbox     = new MySqlOutbox(_mySqlTestHelper.OutboxConfiguration);
     _messageEarliest = new Message(new MessageHeader(Guid.NewGuid(), _TopicFirstMessage, MessageType.MT_DOCUMENT), new MessageBody("message body"));
     _message1        = new Message(new MessageHeader(Guid.NewGuid(), "test_topic2", MessageType.MT_DOCUMENT), new MessageBody("message body2"));
     _message2        = new Message(new MessageHeader(Guid.NewGuid(), _TopicLastMessage, MessageType.MT_DOCUMENT), new MessageBody("message body3"));
 }
Beispiel #7
0
        public MySqlMessageStoreMessageAlreadyExistsTests()
        {
            _mySqlTestHelper = new MySqlTestHelper();
            _mySqlTestHelper.SetupMessageDb();

            _mySqlMessageStore = new MySqlMessageStore(_mySqlTestHelper.MessageStoreConfiguration);
            _messageEarliest   = new Message(new MessageHeader(Guid.NewGuid(), "test_topic", MessageType.MT_DOCUMENT), new MessageBody("message body"));
            _mySqlMessageStore.Add(_messageEarliest);
        }
        public MySqlCommandStoreAddMessageAsyncTests()
        {
            _mysqlTestHelper = new MySqlTestHelper();
            _mysqlTestHelper.SetupCommandDb();

            _mysqlCommandStore = new MySqlCommandStore(_mysqlTestHelper.CommandStoreConfiguration);
            _raisedCommand     = new MyCommand {
                Value = "Test"
            };
        }
Beispiel #9
0
        public SqlInboxDuplicateMessageAsyncTests()
        {
            _mysqlTestHelper = new MySqlTestHelper();
            _mysqlTestHelper.SetupCommandDb();

            _mysqlInbox    = new MySqlInbox(_mysqlTestHelper.InboxConfiguration);
            _raisedCommand = new MyCommand {
                Value = "Test"
            };
            _contextKey = "test-context";
        }
        public MySqlCommandStoreDuplicateMessageTests()
        {
            _mysqlTestHelper = new MySqlTestHelper();
            _mysqlTestHelper.SetupCommandDb();

            _mysqlCommandStore = new MySqlCommandStore(_mysqlTestHelper.CommandStoreConfiguration);
            _raisedCommand     = new MyCommand {
                Value = "Test"
            };
            _mysqlCommandStore.Add(_raisedCommand);
        }
        public void CleanUp()
        {
            _disposables.ForEach(d => d.Dispose());
            _disposables.Clear();

            foreach (var tableToDrop in _tablesToDrop)
            {
                MySqlTestHelper.DropTableIfExists(tableToDrop);
            }

            _tablesToDrop.Clear();
        }
        public SqlInboxAddMessageTests()
        {
            _mysqlTestHelper = new MySqlTestHelper();
            _mysqlTestHelper.SetupCommandDb();

            _mysqlInbox    = new MySqlInbox(_mysqlTestHelper.InboxConfiguration);
            _raisedCommand = new MyCommand {
                Value = "Test"
            };
            _contextKey = "test-context";
            _mysqlInbox.Add(_raisedCommand, _contextKey);
        }
Beispiel #13
0
        public SqlCommandStoreAddMessageTests()
        {
            _mysqlTestHelper = new MySqlTestHelper();
            _mysqlTestHelper.SetupCommandDb();

            _mysqlCommandStore = new MySqlCommandStore(_mysqlTestHelper.CommandStoreConfiguration);
            _raisedCommand     = new MyCommand {
                Value = "Test"
            };
            _contextKey = "test-context";
            _mysqlCommandStore.Add(_raisedCommand, _contextKey);
        }
        protected override void SetUp()
        {
            var rebusTime          = new DefaultRebusTime();
            var loggerFactory      = new ConsoleLoggerFactory(false);
            var connectionProvider = new DbConnectionProvider(MySqlTestHelper.ConnectionString, loggerFactory);

            var tableName = TestConfig.GetName("data");

            MySqlTestHelper.DropTable(tableName);

            _storage = new MySqlDataBusStorage(connectionProvider, tableName, true, loggerFactory, rebusTime, 240);
            _storage.Initialize();
        }
        public MySqlOutboxWritingMessageAsyncTests()
        {
            _mySqlTestHelper = new MySqlTestHelper();
            _mySqlTestHelper.SetupMessageDb();
            _mySqlOutbox = new MySqlOutbox(_mySqlTestHelper.OutboxConfiguration);

            var messageHeader = new MessageHeader(Guid.NewGuid(), "test_topic", MessageType.MT_DOCUMENT, DateTime.UtcNow.AddDays(-1), 5, 5);

            messageHeader.Bag.Add(key1, value1);
            messageHeader.Bag.Add(key2, value2);

            _messageEarliest = new Message(messageHeader, new MessageBody("message body"));
        }
Beispiel #16
0
        public MySqlOutboxFetchOutstandingMessageTests()
        {
            _mySqlTestHelper = new MySqlTestHelper();
            _mySqlTestHelper.SetupMessageDb();
            _mySqlOutbox = new MySqlOutbox(_mySqlTestHelper.OutboxConfiguration);

            _messageEarliest = new Message(new MessageHeader(Guid.NewGuid(), _TopicFirstMessage, MessageType.MT_DOCUMENT), new MessageBody("message body"));
            _message1        = new Message(new MessageHeader(Guid.NewGuid(), "test_topic2", MessageType.MT_DOCUMENT), new MessageBody("message body2"));
            _message2        = new Message(new MessageHeader(Guid.NewGuid(), _TopicLastMessage, MessageType.MT_DOCUMENT), new MessageBody("message body3"));
            _mySqlOutbox.Add(_messageEarliest);
            Task.Delay(100);
            _mySqlOutbox.Add(_message1);
            Task.Delay(100);
            _mySqlOutbox.Add(_message2);
        }
Beispiel #17
0
        protected override void SetUp()
        {
            MySqlTestHelper.DropTableIfExists(_tableName);
            var consoleLoggerFactory = new ConsoleLoggerFactory(false);
            var asyncTaskFactory     = new TplAsyncTaskFactory(consoleLoggerFactory);
            var connectionHelper     = new MySqlConnectionHelper(MySqlTestHelper.ConnectionString);

            _transport = new MySqlTransport(connectionHelper, _tableName, QueueName, consoleLoggerFactory, asyncTaskFactory);
            _transport.EnsureTableIsCreated();

            Using(_transport);

            _transport.Initialize();
            _cancellationToken = new CancellationTokenSource().Token;
        }
        public MySqlMessageStoreRangeRequestTests()
        {
            _mySqlTestHelper = new MySqlTestHelper();
            _mySqlTestHelper.SetupMessageDb();
            _mySqlMessageStore = new MySqlMessageStore(_mySqlTestHelper.MessageStoreConfiguration);

            _messageEarliest = new Message(new MessageHeader(Guid.NewGuid(), _TopicFirstMessage, MessageType.MT_DOCUMENT), new MessageBody("message body"));
            _message1        = new Message(new MessageHeader(Guid.NewGuid(), "test_topic2", MessageType.MT_DOCUMENT), new MessageBody("message body2"));
            _message2        = new Message(new MessageHeader(Guid.NewGuid(), _TopicLastMessage, MessageType.MT_DOCUMENT), new MessageBody("message body3"));
            _mySqlMessageStore.Add(_messageEarliest);
            Task.Delay(100);
            _mySqlMessageStore.Add(_message1);
            Task.Delay(100);
            _mySqlMessageStore.Add(_message2);
        }
        public MySqlOutboxBulkAsyncTests()
        {
            _mySqlTestHelper = new MySqlTestHelper();
            _mySqlTestHelper.SetupMessageDb();

            _sqlOutbox = new MySqlOutboxSync(_mySqlTestHelper.OutboxConfiguration);
            _message   = new Message(new MessageHeader(Guid.NewGuid(), _Topic1, MessageType.MT_COMMAND),
                                     new MessageBody("message body"));
            _message1 = new Message(new MessageHeader(Guid.NewGuid(), _Topic2, MessageType.MT_EVENT),
                                    new MessageBody("message body2"));
            _message2 = new Message(new MessageHeader(Guid.NewGuid(), _Topic1, MessageType.MT_COMMAND),
                                    new MessageBody("message body3"));
            _message3 = new Message(new MessageHeader(Guid.NewGuid(), _Topic2, MessageType.MT_EVENT),
                                    new MessageBody("message body4"));
        }
        protected override void SetUp()
        {
            MySqlTestHelper.DropTableIfExists(TableName);

            _adapter = Using(new BuiltinHandlerActivator());

            Configure.With(_adapter)
            .Logging(l => l.ColoredConsole(LogLevel.Warn))
            .Transport(t => t.UseMySql(MySqlTestHelper.ConnectionString, TableName, QueueName))
            .Options(o =>
            {
                o.SetNumberOfWorkers(0);
                o.SetMaxParallelism(20);
            })
            .Start();
        }
Beispiel #21
0
        public MySqlOutboxWritngMessagesTests()
        {
            _mySqlTestHelper = new MySqlTestHelper();
            _mySqlTestHelper.SetupMessageDb();
            _mySqlOutbox = new MySqlOutbox(_mySqlTestHelper.OutboxConfiguration);

            _messageEarliest = new Message(new MessageHeader(Guid.NewGuid(), "Test", MessageType.MT_COMMAND, DateTime.UtcNow.AddHours(-3)), new MessageBody("Body"));
            _mySqlOutbox.Add(_messageEarliest);

            var message2 = new Message(new MessageHeader(Guid.NewGuid(), "Test2", MessageType.MT_COMMAND, DateTime.UtcNow.AddHours(-2)), new MessageBody("Body2"));

            _mySqlOutbox.Add(message2);

            _messageLatest = new Message(new MessageHeader(Guid.NewGuid(), "Test3", MessageType.MT_COMMAND, DateTime.UtcNow.AddHours(-1)), new MessageBody("Body3"));
            _mySqlOutbox.Add(_messageLatest);
        }
Beispiel #22
0
        protected override void SetUp()
        {
            var loggerFactory          = new ConsoleLoggerFactory(false);
            var connectionProvider     = new DbConnectionProvider(MySqlTestHelper.ConnectionString, loggerFactory);
            var sagaTypeNamingStrategy = new LegacySagaTypeNamingStrategy();
            var serializer             = new DefaultSagaSerializer();

            var dataTableName  = TestConfig.GetName("sagas");
            var indexTableName = TestConfig.GetName("sagaindex");

            MySqlTestHelper.DropTable(indexTableName);
            MySqlTestHelper.DropTable(dataTableName);

            _storage = new MySqlSagaStorage(connectionProvider, dataTableName, indexTableName, loggerFactory, sagaTypeNamingStrategy, serializer);

            _storage.EnsureTablesAreCreated();
        }
        protected override void SetUp()
        {
            MySqlTestHelper.DropTable("Messages");

            _activator = new BuiltinHandlerActivator();

            Using(_activator);

            _starter = Configure.With(_activator)
                       .Transport(t => t.UseMySql(new MySqlTransportOptions(MySqlTestHelper.ConnectionString), QueueName))
                       .Routing(r => r.TypeBased().Map <TimedMessage>(QueueName))
                       .Options(o =>
            {
                o.LogPipeline();
            })
                       .Create();
        }
Beispiel #24
0
        protected override void SetUp()
        {
            MySqlTestHelper.DropAllTables();

            var queueName = TestConfig.GetName("connection_timeout");

            _activator = new BuiltinHandlerActivator();

            Using(_activator);

            _loggerFactory = new ListLoggerFactory(outputToConsole: true);

            _starter = Configure.With(_activator)
                       .Logging(l => l.Use(_loggerFactory))
                       .Transport(t => t.UseMySql(new MySqlTransportOptions(MySqlTestHelper.ConnectionString), queueName))
                       .Create();
        }
        protected override void SetUp()
        {
            MySqlTestHelper.DropAllTables();

            var rebusTime            = new DefaultRebusTime();
            var consoleLoggerFactory = new ConsoleLoggerFactory(false);
            var connectionProvider   = new DbConnectionProvider(MySqlTestHelper.ConnectionString, consoleLoggerFactory);
            var asyncTaskFactory     = new TplAsyncTaskFactory(consoleLoggerFactory);

            _transport = new MySqlTransport(connectionProvider, QueueName, consoleLoggerFactory, asyncTaskFactory, rebusTime, new MySqlTransportOptions(connectionProvider));
            _transport.EnsureTableIsCreated();

            Using(_transport);

            _transport.Initialize();

            _cancellationToken = new CancellationTokenSource().Token;
        }
Beispiel #26
0
        public MySqlOutboxFetchOutstandingMessageTests()
        {
            _mySqlTestHelper = new MySqlTestHelper();
            _mySqlTestHelper.SetupMessageDb();
            _mySqlOutboxSync = new MySqlOutboxSync(_mySqlTestHelper.OutboxConfiguration);

            _messageEarliest = new Message(new MessageHeader(Guid.NewGuid(), _TopicFirstMessage, MessageType.MT_DOCUMENT), new MessageBody("message body"));
            _message1        = new Message(new MessageHeader(Guid.NewGuid(), "test_topic2", MessageType.MT_DOCUMENT), new MessageBody("message body2"));
            _message2        = new Message(new MessageHeader(Guid.NewGuid(), _TopicLastMessage, MessageType.MT_DOCUMENT), new MessageBody("message body3"));
            _mySqlOutboxSync.Add(_messageEarliest);
            Thread.Sleep(100);
            _mySqlOutboxSync.Add(_message1);
            Thread.Sleep(100);
            _mySqlOutboxSync.Add(_message2);

            // Not sure why (assuming time skew) but needs time to settle
            Thread.Sleep(7000);
        }
Beispiel #27
0
        protected override void SetUp()
        {
            // start clean
            MySqlTestHelper.DropAllTables();

            // end clean
            Using(new DisposableCallback(MySqlTestHelper.DropAllTables));

            var loggerFactory      = new ListLoggerFactory();
            var connectionProvider = new DbConnectionProvider(MySqlTestHelper.ConnectionString, loggerFactory);

            _subscriptionStorage = new MySqlSubscriptionStorage(connectionProvider, "Subscriptions", isCentralized: true, loggerFactory);
            _subscriptionStorage.EnsureTableIsCreated();

            _subscriberTransport = Using(new MySqlTransport(connectionProvider, "subscriber", loggerFactory, new TplAsyncTaskFactory(loggerFactory), new FakeRebusTime(), new MySqlTransportOptions(connectionProvider)));
            _subscriberTransport.EnsureTableIsCreated();
            _subscriberTransport.Initialize();
        }
        protected override void SetUp()
        {
            MySqlTestHelper.DropAllTables();

            _activator = Using(new BuiltinHandlerActivator());

            _starter = Configure.With(_activator)
                       .Transport(t => t.UseInMemoryTransport(new InMemNetwork(), "auditing-buggerino"))
                       .Sagas(s => s.StoreInMemory())
                       .Options(o =>
            {
                o.EnableSagaAuditing().StoreInMySql(MySqlTestHelper.ConnectionString, TableName);
                o.SetMaxParallelism(1);
            })
                       .Create();

            Console.WriteLine($@"The test is now running - we have the following tables:

{string.Join(Environment.NewLine, MySqlTestHelper.GetTableNames())}");
        }
        protected override void SetUp()
        {
            _activator = new BuiltinHandlerActivator();

            Using(_activator);

            MySqlTestHelper.DropTable(_indexTableName);
            MySqlTestHelper.DropTable(_dataTableName);

            _starter = Configure.With(_activator)
                       .Logging(l => l.Console(LogLevel.Warn))
                       .Transport(t => t.UseInMemoryTransport(new InMemNetwork(), "saga-perf"))
                       .Sagas(s => s.StoreInMySql(MySqlTestHelper.ConnectionString, _dataTableName, _indexTableName))
                       .Options(o =>
            {
                o.SetNumberOfWorkers(1);
                o.SetMaxParallelism(1);
            })
                       .Create();
        }
        public ITransport Create(string inputQueueAddress)
        {
            var tableName = ("RebusMessages_" + TestConfig.Suffix).TrimEnd('_');

            MySqlTestHelper.DropTable(tableName);

            _tablesToDrop.Add(tableName);

            var rebusTime            = new DefaultRebusTime();
            var consoleLoggerFactory = new ConsoleLoggerFactory(false);
            var connectionProvider   = new DbConnectionProvider(MySqlTestHelper.ConnectionString, consoleLoggerFactory);
            var asyncTaskFactory     = new TplAsyncTaskFactory(consoleLoggerFactory);
            var transport            = new MySqlTransport(connectionProvider, inputQueueAddress, consoleLoggerFactory, asyncTaskFactory, rebusTime, new MySqlTransportOptions(connectionProvider));

            _disposables.Add(transport);

            transport.EnsureTableIsCreated();
            transport.Initialize();

            return(transport);
        }