Пример #1
0
        public void Returns_the_default_pool_size_if_non_set()
        {
            var property = CreateProperty();

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(1, cache.GetPoolSize(property));
        }
Пример #2
0
        public void Pool_size_is_obtained_from__model()
        {
            var property = CreateProperty();

            property.DeclaringEntityType.Model.SqlServer().HiLoSequencePoolSize = 10;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(10, cache.GetPoolSize(property));
        }
Пример #3
0
        public void Sequence_name_is_obtained_from_named_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .ForSqlServer(b => b.UseSequence("DaneelOlivaw"))
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal("DaneelOlivaw", cache.GetSequenceName(property));
        }
        public void Sequence_name_is_obtained_from_named_model_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .ForSqlServerUseSequenceHiLo("DaneelOlivaw")
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal("DaneelOlivaw", cache.GetOrAddSequenceState(property).Sequence.Name);
        }
Пример #5
0
        public void Block_size_is_obtained_from_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .ForSqlServer(b => b.UseSequence())
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(10, cache.GetBlockSize(property));
        }
Пример #6
0
        public void Schema_qualified_sequence_name_is_obtained_from_named_model_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .UseSqlServerSequenceHiLo("DaneelOlivaw", "R")
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal("R.DaneelOlivaw", cache.GetSequenceName(property));
        }
        public void Block_size_is_obtained_from_model_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .ForSqlServerUseSequenceHiLo()
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(10, cache.GetOrAddSequenceState(property).Sequence.IncrementBy);
        }
Пример #8
0
        public void Block_size_is_obtained_from_named_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .ForSqlServerUseSequenceHiLo("DaneelOlivaw")
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache(new ValueGeneratorCacheDependencies());

            Assert.Equal(10, cache.GetOrAddSequenceState(property, CreateConnection()).Sequence.IncrementBy);
        }
Пример #9
0
        public void Sequence_name_is_obtained_from_model_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .ForSqlServerUseSequenceHiLo()
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache(new ValueGeneratorCacheDependencies());

            Assert.Equal("EntityFrameworkHiLoSequence", cache.GetOrAddSequenceState(property, CreateConnection()).Sequence.Name);
        }
Пример #10
0
        public void Block_size_is_obtained_from_named_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .UseSqlServerSequenceHiLo("DaneelOlivaw")
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(10, cache.GetBlockSize(property));
        }
        public void Block_size_is_obtained_from_named_sequence()
        {
            var property = CreateConventionModelBuilder()
                .Entity<Robot>()
                .Property(e => e.Id)
                .ForSqlServer(b => b.UseSequence("DaneelOlivaw"))
                .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(10, cache.GetBlockSize(property));
        }
        public void Block_size_is_obtained_from_specified_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .ForSqlServerHasSequence("DaneelOlivaw", b => b.IncrementsBy(11))
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .ForSqlServerUseSequenceHiLo("DaneelOlivaw")
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(11, cache.GetOrAddSequenceState(property).Sequence.IncrementBy);
        }
Пример #13
0
        public void Sequence_name_is_obtained_from_specified_model_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .ForSqlServerUseSequenceHiLo("DaneelOlivaw")
                           .HasSequence("DaneelOlivaw", b => b.IncrementsBy(11))
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache(new ValueGeneratorCacheDependencies());

            Assert.Equal("DaneelOlivaw", cache.GetOrAddSequenceState(property, CreateConnection()).Sequence.Name);
        }
Пример #14
0
        public void Sequence_name_is_obtained_from_specified_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .ForSqlServer(b => b.Sequence().IncrementBy(11))
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .ForSqlServer(b => b.UseSequence())
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal("DefaultSequence", cache.GetSequenceName(property));
        }
Пример #15
0
        public void Schema_qualified_sequence_name_is_obtained_from_specified_model_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .UseSqlServerSequenceHiLo("DaneelOlivaw", "R")
                           .SqlServerSequence("DaneelOlivaw", "R", b => b.IncrementsBy(11))
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal("DaneelOlivaw", cache.GetOrAddSequenceState(property).Sequence.Name);
            Assert.Equal("R", cache.GetOrAddSequenceState(property).Sequence.Schema);
        }
        public void Non_positive_block_sizes_are_not_allowed()
        {
            var property = CreateConventionModelBuilder()
                           .ForSqlServerHasSequence("DaneelOlivaw", b => b.IncrementsBy(-1))
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .ForSqlServerUseSequenceHiLo("DaneelOlivaw")
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.StartsWith(
                CoreStrings.HiLoBadBlockSize,
                Assert.Throws <ArgumentOutOfRangeException>(() => cache.GetOrAddSequenceState(property).Sequence.IncrementBy).Message);
        }
Пример #17
0
        public void Non_positive_block_sizes_are_not_allowed()
        {
            var property = CreateConventionModelBuilder()
                           .SqlServerSequence("DaneelOlivaw", b => b.IncrementBy(-1))
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .UseSqlServerSequenceHiLo("DaneelOlivaw")
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(
                Strings.SequenceBadBlockSize(-1, "DaneelOlivaw"),
                Assert.Throws <NotSupportedException>(() => cache.GetBlockSize(property)).Message);
        }
        public void Non_positive_pool_sizes_are_not_allowed()
        {
            var property = CreateConventionModelBuilder()
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .UseSqlServerSequenceHiLo()
                           .Metadata;

            property[SqlServerAnnotationNames.Prefix + SqlServerAnnotationNames.HiLoSequencePoolSize] = 0;

            var cache = new SqlServerValueGeneratorCache();

            Assert.StartsWith(
                Internal.Strings.HiLoBadPoolSize,
                Assert.Throws <ArgumentOutOfRangeException>(() => cache.GetOrAddSequenceState(property)).Message);
        }
        public void Block_size_is_obtained_from_default_sequence()
        {
            var modelBuilder = CreateConventionModelBuilder();

            var property = modelBuilder
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .UseHiLo()
                           .Metadata;

            modelBuilder.FinalizeModel();

            var cache = new SqlServerValueGeneratorCache(new ValueGeneratorCacheDependencies());

            Assert.Equal(10, cache.GetOrAddSequenceState(property, CreateConnection()).Sequence.IncrementBy);
        }
        public void Sequence_name_is_obtained_from_named_model_default_sequence()
        {
            var modelBuilder = CreateConventionModelBuilder();

            var property = modelBuilder
                           .UseHiLo("DaneelOlivaw")
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .Metadata;

            modelBuilder.FinalizeModel();

            var cache = new SqlServerValueGeneratorCache(new ValueGeneratorCacheDependencies());

            Assert.Equal("DaneelOlivaw", cache.GetOrAddSequenceState(property, CreateConnection()).Sequence.Name);
        }
    public void Block_size_is_obtained_from_specified_model_default_sequence()
    {
        var modelBuilder = CreateConventionModelBuilder();

        var property = modelBuilder
                       .UseHiLo("DaneelOlivaw")
                       .HasSequence("DaneelOlivaw", b => b.IncrementsBy(11))
                       .Entity <Robot>()
                       .Property(e => e.Id)
                       .Metadata;

        modelBuilder.FinalizeModel();

        var cache = new SqlServerValueGeneratorCache(new ValueGeneratorCacheDependencies());

        Assert.Equal(11, cache.GetOrAddSequenceState((IProperty)property, CreateConnection()).Sequence.IncrementBy);
    }
Пример #22
0
        public void Block_size_is_obtained_from_model_specified_model_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .ForSqlServer(b =>
            {
                b.UseSequence();
                b.Sequence().IncrementBy(11);
            })
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .GenerateValueOnAdd()
                           .ForSqlServer(b => b.UseDefaultValueGeneration())
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(11, cache.GetBlockSize(property));
        }
Пример #23
0
        public void Schema_qualified_sequence_name_is_obtained_from_specified_model_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                           .ForSqlServer(b =>
            {
                b.UseSequence("DaneelOlivaw", "R");
                b.Sequence("DaneelOlivaw", "R").IncrementBy(11);
            })
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .GenerateValueOnAdd()
                           .ForSqlServer(b => b.UseDefaultValueGeneration())
                           .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal("R.DaneelOlivaw", cache.GetSequenceName(property));
        }
        public void Schema_qualified_sequence_name_is_obtained_from_specified_sequence()
        {
            var modelBuilder = CreateConventionModelBuilder();

            var property = modelBuilder
                           .HasSequence("DaneelOlivaw", "R", b => b.IncrementsBy(11))
                           .Entity <Robot>()
                           .Property(e => e.Id)
                           .UseHiLo("DaneelOlivaw", "R")
                           .Metadata;

            modelBuilder.FinalizeModel();

            var cache = new SqlServerValueGeneratorCache(new ValueGeneratorCacheDependencies());

            Assert.Equal("DaneelOlivaw", cache.GetOrAddSequenceState(property, CreateConnection()).Sequence.Name);
            Assert.Equal("R", cache.GetOrAddSequenceState(property, CreateConnection()).Sequence.Schema);
        }
        public void Non_positive_block_sizes_are_not_allowed()
        {
            var property = CreateConventionModelBuilder()
                .ForSqlServer(b => b.Sequence("DaneelOlivaw").IncrementBy(-1))
                .Entity<Robot>()
                .Property(e => e.Id)
                .ForSqlServer(b => b.UseSequence("DaneelOlivaw"))
                .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(
                Strings.SequenceBadBlockSize(-1, "DaneelOlivaw"),
                Assert.Throws<NotSupportedException>(() => cache.GetBlockSize(property)).Message);
        }
        public void Block_size_is_obtained_from_model_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                .ForSqlServer(b => b.UseSequence())
                .Entity<Robot>()
                .Property(e => e.Id)
                .GenerateValueOnAdd()
                .ForSqlServer(b => b.UseDefaultValueGeneration())
                .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(10, cache.GetBlockSize(property));
        }
        public void Sequence_name_is_obtained_from_specified_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                .ForSqlServer(b => b.Sequence().IncrementBy(11))
                .Entity<Robot>()
                .Property(e => e.Id)
                .ForSqlServer(b => b.UseSequence())
                .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal("DefaultSequence", cache.GetSequenceName(property));
        }
        public void Returns_the_default_pool_size()
        {
            var property = CreateProperty();

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal(5, cache.GetPoolSize(property));
        }
        public void Schema_qualified_sequence_name_is_obtained_from_specified_model_default_sequence()
        {
            var property = CreateConventionModelBuilder()
                .ForSqlServer(b =>
                    {
                        b.UseSequence("DaneelOlivaw", "R");
                        b.Sequence("DaneelOlivaw", "R").IncrementBy(11);
                    })
                .Entity<Robot>()
                .Property(e => e.Id)
                .GenerateValueOnAdd()
                .ForSqlServer(b => b.UseDefaultValueGeneration())
                .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal("R.DaneelOlivaw", cache.GetSequenceName(property));
        }
        public void Schema_qualified_sequence_name_is_obtained_from_named_sequence()
        {
            var property = CreateConventionModelBuilder()
                .Entity<Robot>()
                .Property(e => e.Id)
                .ForSqlServer(b => b.UseSequence("DaneelOlivaw", "R"))
                .Metadata;

            var cache = new SqlServerValueGeneratorCache();

            Assert.Equal("R.DaneelOlivaw", cache.GetSequenceName(property));
        }