Ejemplo n.º 1
0
        public void Sink_creates_log_table_columns()
        {
            // Arrange
            var db          = Guid.NewGuid().ToString();
            var settingsMoq = new Mock <ISejilSettings>();

            settingsMoq.SetupGet(p => p.SqliteDbPath).Returns(db);

            // Act
            var sink = new SejilSink(settingsMoq.Object);

            // Assert
            var columns = GetColumns(db, "log");
            var fks     = GetForeignKeyColumns(db, "log");

            Assert.Equal(6, columns.Count());
            Assert.Equal(0, fks.Count());

            var idCol = columns.ElementAt(0);

            Assert.Equal("id", idCol.Name);
            Assert.Equal("TEXT", idCol.Type);
            Assert.True(idCol.NotNull);
            Assert.True(idCol.Pk);

            var messageCol = columns.ElementAt(1);

            Assert.Equal("message", messageCol.Name);
            Assert.Equal("TEXT", messageCol.Type);
            Assert.True(messageCol.NotNull);
            Assert.False(messageCol.Pk);

            var messageTemplateCol = columns.ElementAt(2);

            Assert.Equal("messageTemplate", messageTemplateCol.Name);
            Assert.Equal("TEXT", messageTemplateCol.Type);
            Assert.True(messageTemplateCol.NotNull);
            Assert.False(messageTemplateCol.Pk);

            var levelCol = columns.ElementAt(3);

            Assert.Equal("level", levelCol.Name);
            Assert.Equal("VARCHAR(64)", levelCol.Type);
            Assert.True(levelCol.NotNull);
            Assert.False(levelCol.Pk);

            var timestampCol = columns.ElementAt(4);

            Assert.Equal("timestamp", timestampCol.Name);
            Assert.Equal("DATETIME", timestampCol.Type);
            Assert.True(timestampCol.NotNull);
            Assert.False(timestampCol.Pk);

            var exceptionCol = columns.ElementAt(5);

            Assert.Equal("exception", exceptionCol.Name);
            Assert.Equal("TEXT", exceptionCol.Type);
            Assert.False(exceptionCol.NotNull);
            Assert.False(exceptionCol.Pk);
        }
Ejemplo n.º 2
0
        public void Sink_creates_log_property_table_columns()
        {
            // Arrange
            var db          = Guid.NewGuid().ToString();
            var settingsMoq = new Mock <ISejilSettings>();

            settingsMoq.SetupGet(p => p.SqliteDbPath).Returns(db);

            // Act
            var sink = new SejilSink(settingsMoq.Object);

            // Assert
            var columns = GetColumns(db, "log_property");
            var fks     = GetForeignKeyColumns(db, "log_property");

            Assert.Equal(4, columns.Count());
            Assert.Equal(1, fks.Count());

            var idCol = columns.ElementAt(0);

            Assert.Equal("id", idCol.Name);
            Assert.Equal("INTEGER", idCol.Type);
            Assert.True(idCol.NotNull);
            Assert.True(idCol.Pk);

            var logIdCol = columns.ElementAt(1);

            Assert.Equal("logId", logIdCol.Name);
            Assert.Equal("TEXT", logIdCol.Type);
            Assert.True(logIdCol.NotNull);
            Assert.False(logIdCol.Pk);

            var nameCol = columns.ElementAt(2);

            Assert.Equal("name", nameCol.Name);
            Assert.Equal("TEXT", nameCol.Type);
            Assert.True(nameCol.NotNull);
            Assert.False(nameCol.Pk);

            var valueCol = columns.ElementAt(3);

            Assert.Equal("value", valueCol.Name);
            Assert.Equal("TEXT", valueCol.Type);
            Assert.False(valueCol.NotNull);
            Assert.False(valueCol.Pk);

            var fkCol = fks.ElementAt(0);

            Assert.Equal("log", fkCol.Table);
            Assert.Equal("logId", fkCol.From);
            Assert.Equal("id", fkCol.To);
        }
Ejemplo n.º 3
0
        public void Sink_creates_database_tables()
        {
            // Arrange
            var db          = Guid.NewGuid().ToString();
            var settingsMoq = new Mock <ISejilSettings>();

            settingsMoq.SetupGet(p => p.SqliteDbPath).Returns(db);

            // Act
            var sink = new SejilSink(settingsMoq.Object);

            // Assert
            var tables = GetTables(db);

            Assert.Contains("log", tables);
            Assert.Contains("log_property", tables);
            Assert.Contains("log_query", tables);
        }
Ejemplo n.º 4
0
        public void Sink_creates_log_property_table_columns()
        {
            // Arrange
            var db          = Guid.NewGuid().ToString();
            var settingsMoq = new Mock <ISejilSettings>();

            settingsMoq.SetupGet(p => p.ConnectionString).Returns(db);

            // Act
            var sink = new SejilSink(settingsMoq.Object);

            // Assert
            var columns = GetColumns(db, "log_property");

            Assert.Equal(4, columns.Count());

            var logIdCol = columns.ElementAt(0);

            Assert.Equal("logId", logIdCol.Name);
            Assert.Equal("INTEGER", logIdCol.Type);
            Assert.True(logIdCol.NotNull);
            Assert.False(logIdCol.Pk);

            var timestampCol = columns.ElementAt(1);

            Assert.Equal("timestamp", timestampCol.Name);
            Assert.Equal("DATETIME", timestampCol.Type);
            Assert.True(timestampCol.NotNull);
            Assert.False(timestampCol.Pk);

            var nameCol = columns.ElementAt(2);

            Assert.Equal("name", nameCol.Name);
            Assert.Equal("TEXT", nameCol.Type);
            Assert.True(nameCol.NotNull);
            Assert.False(nameCol.Pk);

            var valueCol = columns.ElementAt(3);

            Assert.Equal("value", valueCol.Name);
            Assert.Equal("TEXT", valueCol.Type);
            Assert.False(valueCol.NotNull);
            Assert.False(valueCol.Pk);
        }
Ejemplo n.º 5
0
        public void Sink_creates_log_query_table_columns()
        {
            // Arrange
            var db          = Guid.NewGuid().ToString();
            var settingsMoq = new Mock <ISejilSettings>();

            settingsMoq.SetupGet(p => p.SqliteDbPath).Returns(db);

            // Act
            var sink = new SejilSink(settingsMoq.Object);

            // Assert
            var columns = GetColumns(db, "log_query");
            var fks     = GetForeignKeyColumns(db, "log_query");

            Assert.Equal(3, columns.Count());
            Assert.Equal(0, fks.Count());

            var idCol = columns.ElementAt(0);

            Assert.Equal("id", idCol.Name);
            Assert.Equal("INTEGER", idCol.Type);
            Assert.True(idCol.NotNull);
            Assert.True(idCol.Pk);

            var nameCol = columns.ElementAt(1);

            Assert.Equal("name", nameCol.Name);
            Assert.Equal("VARCHAR(255)", nameCol.Type);
            Assert.True(nameCol.NotNull);
            Assert.False(nameCol.Pk);

            var queryCol = columns.ElementAt(2);

            Assert.Equal("query", queryCol.Name);
            Assert.Equal("TEXT", queryCol.Type);
            Assert.True(queryCol.NotNull);
            Assert.False(queryCol.Pk);
        }