From fad9dbc83aab39d1130141ed9588a797bf4412cb Mon Sep 17 00:00:00 2001 From: Shay Rojansky Date: Thu, 7 Nov 2019 14:05:51 +0100 Subject: [PATCH] More using declarations in tests --- .../NodaTimeQueryNpgsqlTest.cs | 341 ++++++++---------- .../NpgsqlDatabaseFacadeTest.cs | 105 +++--- .../NpgsqlRelationalConnectionTest.cs | 29 +- 3 files changed, 215 insertions(+), 260 deletions(-) diff --git a/test/EFCore.PG.NodaTime.FunctionalTests/NodaTimeQueryNpgsqlTest.cs b/test/EFCore.PG.NodaTime.FunctionalTests/NodaTimeQueryNpgsqlTest.cs index 9170f464..2aa1a85a 100644 --- a/test/EFCore.PG.NodaTime.FunctionalTests/NodaTimeQueryNpgsqlTest.cs +++ b/test/EFCore.PG.NodaTime.FunctionalTests/NodaTimeQueryNpgsqlTest.cs @@ -8,15 +8,17 @@ using Npgsql.EntityFrameworkCore.PostgreSQL.TestUtilities; using NpgsqlTypes; using Xunit; +using Xunit.Abstractions; namespace Npgsql.EntityFrameworkCore.PostgreSQL { public class NodaTimeTest : IClassFixture { - public NodaTimeTest(NodaTimeFixture fixture) + public NodaTimeTest(NodaTimeFixture fixture, ITestOutputHelper testOutputHelper) { Fixture = fixture; Fixture.TestSqlLoggerFactory.Clear(); + //Fixture.TestSqlLoggerFactory.SetTestOutputHelper(testOutputHelper); } NodaTimeFixture Fixture { get; } @@ -24,24 +26,22 @@ public NodaTimeTest(NodaTimeFixture fixture) [Fact] public void Operator() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDate < new LocalDate(2018, 4, 21)); - Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); - Assert.Contains(@"n.""LocalDate"" < DATE '2018-04-21'", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDate < new LocalDate(2018, 4, 21)); + + Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); + Assert.Contains(@"n.""LocalDate"" < DATE '2018-04-21'", Sql); } [Fact] public void Operator_add_period() { // Note: requires some special type inference logic because we're adding things of different types - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDate + Period.FromMonths(1) > t.LocalDate); - Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); - Assert.Contains(@"(n.""LocalDate"" + INTERVAL 'P1M') > n.""LocalDate""", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDate + Period.FromMonths(1) > t.LocalDate); + + Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); + Assert.Contains(@"(n.""LocalDate"" + INTERVAL 'P1M') > n.""LocalDate""", Sql); } #region LocalDateTime members @@ -49,106 +49,97 @@ public void Operator_add_period() [Fact] public void Select_LocalDateTime_year_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Year == 2018); - Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); - Assert.Contains(@"DATE_PART('year', n.""LocalDateTime"")::INT = 2018", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Year == 2018); + + Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); + Assert.Contains(@"DATE_PART('year', n.""LocalDateTime"")::INT = 2018", Sql); } [Fact] public void Select_LocalDateTime_month_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Month == 4); - Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); - Assert.Contains(@"DATE_PART('month', n.""LocalDateTime"")::INT = 4", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Month == 4); + + Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); + Assert.Contains(@"DATE_PART('month', n.""LocalDateTime"")::INT = 4", Sql); } [Fact] public void Select_LocalDateTime_day_of_year_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.DayOfYear == 110); - Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); - Assert.Contains(@"DATE_PART('doy', n.""LocalDateTime"")::INT = 110", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.DayOfYear == 110); + + Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); + Assert.Contains(@"DATE_PART('doy', n.""LocalDateTime"")::INT = 110", Sql); } [Fact] public void Select_LocalDateTime_day_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Day == 20); - Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); - Assert.Contains(@"DATE_PART('day', n.""LocalDateTime"")::INT = 20", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Day == 20); + + Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); + Assert.Contains(@"DATE_PART('day', n.""LocalDateTime"")::INT = 20", Sql); } [Fact] public void Select_LocalDateTime_hour_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Hour == 10); - Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); - Assert.Contains(@"DATE_PART('hour', n.""LocalDateTime"")::INT = 10", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Hour == 10); + + Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); + Assert.Contains(@"DATE_PART('hour', n.""LocalDateTime"")::INT = 10", Sql); } [Fact] public void Select_LocalDateTime_minute_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Minute == 31); - Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); - Assert.Contains(@"DATE_PART('minute', n.""LocalDateTime"")::INT = 31", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Minute == 31); + + Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); + Assert.Contains(@"DATE_PART('minute', n.""LocalDateTime"")::INT = 31", Sql); } [Fact] public void Select_LocalDateTime_second_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Second == 33); - Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); - Assert.Contains(@"FLOOR(DATE_PART('second', n.""LocalDateTime""))::INT = 33", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Second == 33); + + Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); + Assert.Contains(@"FLOOR(DATE_PART('second', n.""LocalDateTime""))::INT = 33", Sql); } [Fact] public void Select_LocalDateTime_date_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Date == new LocalDate(2018, 4, 20)); - Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); - Assert.Contains(@"DATE_TRUNC('day', n.""LocalDateTime"") = DATE '2018-04-20'", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.Date == new LocalDate(2018, 4, 20)); + + Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); + Assert.Contains(@"DATE_TRUNC('day', n.""LocalDateTime"") = DATE '2018-04-20'", Sql); } [Fact] public void Select_LocalDateTime_day_of_week_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.DayOfWeek == IsoDayOfWeek.Friday); - Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); - Assert.Equal(@"SELECT n.""Id"", n.""DateRange"", n.""Instant"", n.""LocalDate"", n.""LocalDateTime"", n.""LocalTime"", n.""OffsetTime"", n.""Period"", n.""ZonedDateTime"" + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDateTime.DayOfWeek == IsoDayOfWeek.Friday); + + Assert.Equal(new LocalDateTime(2018, 4, 20, 10, 31, 33, 666), d.LocalDateTime); + Assert.Equal(@"SELECT n.""Id"", n.""DateRange"", n.""Instant"", n.""LocalDate"", n.""LocalDateTime"", n.""LocalTime"", n.""OffsetTime"", n.""Period"", n.""ZonedDateTime"" FROM ""NodaTimeTypes"" AS n WHERE CASE WHEN FLOOR(DATE_PART('dow', n.""LocalDateTime""))::INT = 0 THEN 7 ELSE FLOOR(DATE_PART('dow', n.""LocalDateTime""))::INT END = 5 LIMIT 2", Sql, ignoreLineEndingDifferences: true); - } } #endregion LocalDateTime members @@ -158,45 +149,41 @@ WHERE CASE [Fact] public void Select_LocalDate_year_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDate.Year == 2018); - Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); - Assert.Contains(@"DATE_PART('year', n.""LocalDate"")::INT = 2018", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDate.Year == 2018); + + Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); + Assert.Contains(@"DATE_PART('year', n.""LocalDate"")::INT = 2018", Sql); } [Fact] public void Select_LocalDate_month_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDate.Month == 4); - Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); - Assert.Contains(@"DATE_PART('month', n.""LocalDate"")::INT = 4", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDate.Month == 4); + + Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); + Assert.Contains(@"DATE_PART('month', n.""LocalDate"")::INT = 4", Sql); } [Fact] public void Select_LocalDate_day_of_year_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDate.DayOfYear == 110); - Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); - Assert.Contains(@"DATE_PART('doy', n.""LocalDate"")::INT = 110", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDate.DayOfYear == 110); + + Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); + Assert.Contains(@"DATE_PART('doy', n.""LocalDate"")::INT = 110", Sql); } [Fact] public void Select_LocalDate_day_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalDate.Day == 20); - Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); - Assert.Contains(@"DATE_PART('day', n.""LocalDate"")::INT = 20", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalDate.Day == 20); + + Assert.Equal(new LocalDate(2018, 4, 20), d.LocalDate); + Assert.Contains(@"DATE_PART('day', n.""LocalDate"")::INT = 20", Sql); } #endregion LocalDate members @@ -206,34 +193,31 @@ public void Select_LocalDate_day_component() [Fact] public void Select_LocalTime_hour_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalTime.Hour == 10); - Assert.Equal(new LocalTime(10, 31, 33, 666), d.LocalTime); - Assert.Contains(@"DATE_PART('hour', n.""LocalTime"")::INT = 10", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalTime.Hour == 10); + + Assert.Equal(new LocalTime(10, 31, 33, 666), d.LocalTime); + Assert.Contains(@"DATE_PART('hour', n.""LocalTime"")::INT = 10", Sql); } [Fact] public void Select_LocalTime_minute_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalTime.Minute == 31); - Assert.Equal(new LocalTime(10, 31, 33, 666), d.LocalTime); - Assert.Contains(@"DATE_PART('minute', n.""LocalTime"")::INT = 31", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalTime.Minute == 31); + + Assert.Equal(new LocalTime(10, 31, 33, 666), d.LocalTime); + Assert.Contains(@"DATE_PART('minute', n.""LocalTime"")::INT = 31", Sql); } [Fact] public void Select_LocalTime_second_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.LocalTime.Second == 33); - Assert.Equal(new LocalTime(10, 31, 33, 666), d.LocalTime); - Assert.Contains(@"FLOOR(DATE_PART('second', n.""LocalTime""))::INT = 33", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.LocalTime.Second == 33); + + Assert.Equal(new LocalTime(10, 31, 33, 666), d.LocalTime); + Assert.Contains(@"FLOOR(DATE_PART('second', n.""LocalTime""))::INT = 33", Sql); } #endregion LocalTime members @@ -243,124 +227,113 @@ public void Select_LocalTime_second_component() [Fact] public void Select_Period_year_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.Period.Years == 2018); - Assert.Equal(_defaultPeriod, d.Period); - Assert.Contains(@"DATE_PART('year', n.""Period"")::INT = 2018", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.Period.Years == 2018); + + Assert.Equal(_defaultPeriod, d.Period); + Assert.Contains(@"DATE_PART('year', n.""Period"")::INT = 2018", Sql); } /* [Fact] public void Select_Period_month_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.Period.Month == 4); - Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); - Assert.Contains(@"WHERE CAST(DATE_PART('month', t.""Period"") AS integer) = 4", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.Period.Month == 4); + + Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); + Assert.Contains(@"WHERE CAST(DATE_PART('month', t.""Period"") AS integer) = 4", Sql); } [Fact] public void Select_Period_day_of_year_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.Period.DayOfYear == 110); - Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); - Assert.Contains(@"WHERE CAST(DATE_PART('doy', t.""Period"") AS integer) = 110", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.Period.DayOfYear == 110); + + Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); + Assert.Contains(@"WHERE CAST(DATE_PART('doy', t.""Period"") AS integer) = 110", Sql); } [Fact] public void Select_Period_day_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.Period.Day == 20); - Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); - Assert.Contains(@"WHERE CAST(DATE_PART('day', t.""Period"") AS integer) = 20", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.Period.Day == 20); + + Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); + Assert.Contains(@"WHERE CAST(DATE_PART('day', t.""Period"") AS integer) = 20", Sql); } [Fact] public void Select_Period_hour_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.Period.Hour == 10); - Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); - Assert.Contains(@"WHERE CAST(DATE_PART('hour', t.""Period"") AS integer) = 10", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.Period.Hour == 10); + + Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); + Assert.Contains(@"WHERE CAST(DATE_PART('hour', t.""Period"") AS integer) = 10", Sql); } [Fact] public void Select_Period_minute_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.Period.Minute == 31); - Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); - Assert.Contains(@"WHERE CAST(DATE_PART('minute', t.""Period"") AS integer) = 31", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.Period.Minute == 31); + + Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); + Assert.Contains(@"WHERE CAST(DATE_PART('minute', t.""Period"") AS integer) = 31", Sql); } [Fact] public void Select_Period_second_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.Period.Second == 33); - Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); - Assert.Contains(@"WHERE CAST(FLOOR(DATE_PART('second', t.""Period"")) AS integer) = 33", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.Period.Second == 33); + + Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); + Assert.Contains(@"WHERE CAST(FLOOR(DATE_PART('second', t.""Period"")) AS integer) = 33", Sql); } [Fact] public void Select_Period_date_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.Period.Date == new LocalDate(2018, 4, 20)); - Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); - Assert.Contains(@"WHERE DATE_TRUNC('day', t.""Period"") = DATE '2018-04-20'", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.Period.Date == new LocalDate(2018, 4, 20)); + + Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); + Assert.Contains(@"WHERE DATE_TRUNC('day', t.""Period"") = DATE '2018-04-20'", Sql); } [Fact] public void Select_Period_day_of_week_component() { - using (var ctx = CreateContext()) - { - var d = ctx.NodaTimeTypes.Single(t => t.Period.DayOfWeek == IsoDayOfWeek.Friday); - Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); - Assert.Contains(@"DATE_PART('dow', t.""Period"")", Sql); - } + using var ctx = CreateContext(); + var d = ctx.NodaTimeTypes.Single(t => t.Period.DayOfWeek == IsoDayOfWeek.Friday); + + Assert.Equal(new Period(2018, 4, 20, 10, 31, 33, 666), d.Period); + Assert.Contains(@"DATE_PART('dow', t.""Period"")", Sql); } */ [Fact] public void Period_from_days() { - using (var ctx = CreateContext()) - { - // ReSharper disable once PossibleUnintendedReferenceComparison - Assert.Null(ctx.NodaTimeTypes.SingleOrDefault(t => t.Period == Period.FromDays(t.Id))); - Assert.Contains(@"MAKE_INTERVAL(days => n.""Id"")", Sql); - } + using var ctx = CreateContext(); + + // ReSharper disable once PossibleUnintendedReferenceComparison + Assert.Null(ctx.NodaTimeTypes.SingleOrDefault(t => t.Period == Period.FromDays(t.Id))); + Assert.Contains(@"MAKE_INTERVAL(days => n.""Id"")", Sql); } [Fact] public void Period_from_seconds() { - using (var ctx = CreateContext()) - { - // ReSharper disable once PossibleUnintendedReferenceComparison - Assert.Null(ctx.NodaTimeTypes.SingleOrDefault(t => t.Period == Period.FromSeconds(t.Id))); - Assert.Contains(@"MAKE_INTERVAL(secs => CAST(n.""Id"" AS bigint))", Sql); - } + using var ctx = CreateContext(); + + // ReSharper disable once PossibleUnintendedReferenceComparison + Assert.Null(ctx.NodaTimeTypes.SingleOrDefault(t => t.Period == Period.FromSeconds(t.Id))); + Assert.Contains(@"MAKE_INTERVAL(secs => CAST(n.""Id"" AS bigint))", Sql); } #endregion Period @@ -370,11 +343,10 @@ public void Period_from_seconds() [Fact] public void DateRange_Contains() { - using (var ctx = CreateContext()) - { - var _ = ctx.NodaTimeTypes.Single(t => t.DateRange.Contains(new LocalDate(2018, 4, 21))); - Assert.Contains(@"n.""DateRange"" @> DATE '2018-04-21'", Sql); - } + using var ctx = CreateContext(); + var _ = ctx.NodaTimeTypes.Single(t => t.DateRange.Contains(new LocalDate(2018, 4, 21))); + + Assert.Contains(@"n.""DateRange"" @> DATE '2018-04-21'", Sql); } #endregion Range @@ -384,11 +356,10 @@ public void DateRange_Contains() [Fact] public void GetCurrentInstant_from_Instance() { - using (var ctx = CreateContext()) - { - var _ = ctx.NodaTimeTypes.Where(t => t.Instant < SystemClock.Instance.GetCurrentInstant()).ToArray(); - Assert.Contains(@"WHERE n.""Instant"" < NOW() AT TIME ZONE 'UTC'", Sql); - } + using var ctx = CreateContext(); + var _ = ctx.NodaTimeTypes.Where(t => t.Instant < SystemClock.Instance.GetCurrentInstant()).ToArray(); + + Assert.Contains(@"WHERE n.""Instant"" < NOW() AT TIME ZONE 'UTC'", Sql); } #endregion diff --git a/test/EFCore.PG.Tests/NpgsqlDatabaseFacadeTest.cs b/test/EFCore.PG.Tests/NpgsqlDatabaseFacadeTest.cs index 2f1a194d..ec3b23ed 100644 --- a/test/EFCore.PG.Tests/NpgsqlDatabaseFacadeTest.cs +++ b/test/EFCore.PG.Tests/NpgsqlDatabaseFacadeTest.cs @@ -11,104 +11,95 @@ public class NpgsqlDatabaseFacadeTest [Fact] public void IsNpgsql_when_using_OnConfiguring() { - using (var context = new NpgsqlOnConfiguringContext()) - { - Assert.True(context.Database.IsNpgsql()); - } + using var context = new NpgsqlOnConfiguringContext(); + + Assert.True(context.Database.IsNpgsql()); } [Fact] public void IsNpgsql_in_OnModelCreating_when_using_OnConfiguring() { - using (var context = new NpgsqlOnModelContext()) - { - var _ = context.Model; // Trigger context initialization - Assert.True(context.IsNpgsqlSet); - } + using var context = new NpgsqlOnModelContext(); + var _ = context.Model; // Trigger context initialization + + Assert.True(context.IsNpgsqlSet); } [Fact] public void IsNpgsql_in_constructor_when_using_OnConfiguring() { - using (var context = new NpgsqlConstructorContext()) - { - var _ = context.Model; // Trigger context initialization - Assert.True(context.IsNpgsqlSet); - } + using var context = new NpgsqlConstructorContext(); + var _ = context.Model; // Trigger context initialization + + Assert.True(context.IsNpgsqlSet); } [Fact] public void Cannot_use_IsNpgsql_in_OnConfiguring() { - using (var context = new NpgsqlUseInOnConfiguringContext()) - { - Assert.Equal( - CoreStrings.RecursiveOnConfiguring, - Assert.Throws( - () => - { - var _ = context.Model; // Trigger context initialization - }).Message); - } + using var context = new NpgsqlUseInOnConfiguringContext(); + + Assert.Equal( + CoreStrings.RecursiveOnConfiguring, + Assert.Throws( + () => + { + var _ = context.Model; // Trigger context initialization + }).Message); } [Fact] public void IsNpgsql_when_using_constructor() { - using (var context = new ProviderContext( - new DbContextOptionsBuilder().UseNpgsql("Database=Maltesers").Options)) - { - Assert.True(context.Database.IsNpgsql()); - } + using var context = new ProviderContext( + new DbContextOptionsBuilder().UseNpgsql("Database=Maltesers").Options); + + Assert.True(context.Database.IsNpgsql()); } [Fact] public void IsNpgsql_in_OnModelCreating_when_using_constructor() { - using (var context = new ProviderOnModelContext( - new DbContextOptionsBuilder().UseNpgsql("Database=Maltesers").Options)) - { - var _ = context.Model; // Trigger context initialization - Assert.True(context.IsNpgsqlSet); - } + using var context = new ProviderOnModelContext( + new DbContextOptionsBuilder().UseNpgsql("Database=Maltesers").Options); + var _ = context.Model; // Trigger context initialization + + Assert.True(context.IsNpgsqlSet); } [Fact] public void IsNpgsql_in_constructor_when_using_constructor() { - using (var context = new ProviderConstructorContext( - new DbContextOptionsBuilder().UseNpgsql("Database=Maltesers").Options)) - { - var _ = context.Model; // Trigger context initialization - Assert.True(context.IsNpgsqlSet); - } + using var context = new ProviderConstructorContext( + new DbContextOptionsBuilder().UseNpgsql("Database=Maltesers").Options); + var _ = context.Model; // Trigger context initialization + + Assert.True(context.IsNpgsqlSet); } [Fact] public void Cannot_use_IsNpgsql_in_OnConfiguring_with_constructor() { - using (var context = new ProviderUseInOnConfiguringContext( - new DbContextOptionsBuilder().UseNpgsql("Database=Maltesers").Options)) - { - Assert.Equal( - CoreStrings.RecursiveOnConfiguring, - Assert.Throws( - () => - { - var _ = context.Model; // Trigger context initialization - }).Message); - } + using var context = new ProviderUseInOnConfiguringContext( + new DbContextOptionsBuilder().UseNpgsql("Database=Maltesers").Options); + + Assert.Equal( + CoreStrings.RecursiveOnConfiguring, + Assert.Throws( + () => + { + var _ = context.Model; // Trigger context initialization + }).Message); } /* [Fact] public void Not_IsNpgsql_when_using_different_provider() { - using (var context = new ProviderContext( - new DbContextOptionsBuilder().UseInMemoryDatabase("Maltesers").Options)) - { - Assert.False(context.Database.IsNpgsql()); - } + using var context = new ProviderContext( + new DbContextOptionsBuilder().UseInMemoryDatabase("Maltesers").Options); + + Assert.False(context.Database.IsNpgsql()); }*/ class ProviderContext : DbContext diff --git a/test/EFCore.PG.Tests/NpgsqlRelationalConnectionTest.cs b/test/EFCore.PG.Tests/NpgsqlRelationalConnectionTest.cs index f94a4555..814d2713 100644 --- a/test/EFCore.PG.Tests/NpgsqlRelationalConnectionTest.cs +++ b/test/EFCore.PG.Tests/NpgsqlRelationalConnectionTest.cs @@ -15,22 +15,18 @@ public class NpgsqlRelationalConnectionTest [Fact] public void Creates_Npgsql_Server_connection_string() { - using (var connection = new NpgsqlRelationalConnection(CreateDependencies())) - { - Assert.IsType(connection.DbConnection); - } + using var connection = new NpgsqlRelationalConnection(CreateDependencies()); + + Assert.IsType(connection.DbConnection); } [Fact] public void Can_create_master_connection_string() { - using (var connection = new NpgsqlRelationalConnection(CreateDependencies())) - { - using (var master = connection.CreateMasterConnection()) - { - Assert.Equal(@"Host=localhost;Database=postgres;Username=some_user;Password=some_password;Pooling=False", master.ConnectionString); - } - } + using var connection = new NpgsqlRelationalConnection(CreateDependencies()); + using var master = connection.CreateMasterConnection(); + + Assert.Equal(@"Host=localhost;Database=postgres;Username=some_user;Password=some_password;Pooling=False", master.ConnectionString); } [Fact] @@ -42,13 +38,10 @@ public void Can_create_master_connection_string_with_alternate_admin_db() b => b.UseAdminDatabase("template0")) .Options; - using (var connection = new NpgsqlRelationalConnection(CreateDependencies(options))) - { - using (var master = connection.CreateMasterConnection()) - { - Assert.Equal(@"Host=localhost;Database=template0;Username=some_user;Password=some_password;Pooling=False", master.ConnectionString); - } - } + using var connection = new NpgsqlRelationalConnection(CreateDependencies(options)); + using var master = connection.CreateMasterConnection(); + + Assert.Equal(@"Host=localhost;Database=template0;Username=some_user;Password=some_password;Pooling=False", master.ConnectionString); } public static RelationalConnectionDependencies CreateDependencies(DbContextOptions options = null) -- GitLab