2013-11-28 07:11:05 +00:00
using System ;
using System.Linq ;
2019-12-18 21:56:41 +00:00
using Dapper ;
2013-11-28 07:11:05 +00:00
using FluentAssertions ;
using NUnit.Framework ;
using NzbDrone.Core.Datastore ;
2019-12-18 02:17:47 +00:00
using NzbDrone.Core.Movies ;
2019-12-22 22:08:53 +00:00
using NzbDrone.Core.Test.Framework ;
2013-11-28 07:11:05 +00:00
namespace NzbDrone.Core.Test.Datastore
{
public class DatabaseFixture : DbTest
{
[Test]
public void SingleOrDefault_should_return_null_on_empty_db ( )
{
Mocker . Resolve < IDatabase > ( )
2022-03-28 20:45:52 +00:00
. OpenConnection ( ) . Query < Movie > ( "SELECT * FROM \"Movies\"" )
2019-12-18 21:56:41 +00:00
. SingleOrDefault ( )
2013-11-28 07:11:05 +00:00
. Should ( )
. BeNull ( ) ;
}
[Test]
2019-12-18 21:56:41 +00:00
public void vacuum ( )
2013-11-28 07:11:05 +00:00
{
Mocker . Resolve < IDatabase > ( ) . Vacuum ( ) ;
}
2022-07-18 13:57:15 +00:00
[Test]
public void postgres_should_not_contain_timestamp_without_timezone_columns ( )
{
if ( Db . DatabaseType ! = DatabaseType . PostgreSQL )
{
return ;
}
Mocker . Resolve < IDatabase > ( )
. OpenConnection ( ) . Query ( "SELECT table_name, column_name, data_type FROM INFORMATION_SCHEMA.COLUMNS WHERE table_schema = 'public' AND data_type = 'timestamp without time zone'" )
. Should ( )
. BeNullOrEmpty ( ) ;
}
2013-11-28 07:11:05 +00:00
[Test]
public void get_version ( )
{
Mocker . Resolve < IDatabase > ( ) . Version . Should ( ) . BeGreaterThan ( new Version ( "3.0.0" ) ) ;
}
}
2018-03-14 20:41:36 +00:00
}