コード例 #1
0
        public void NoConflict_ETagNull_LastModifiedNull()
        {
            var concurrencyAware  = new DummyConcurrencyAware();
            var concurrencyAware2 = new DummyConcurrencyAware();

            concurrencyAware.AssertNoConflict(concurrencyAware2);
            Assert.False(concurrencyAware.ConflictsWith(concurrencyAware2));
        }
コード例 #2
0
        public void NoConflict_ETagNull_LastModifiedNull()
        {
            var concurrencyAware = new DummyConcurrencyAware();
            var concurrencyAware2 = new DummyConcurrencyAware();

            concurrencyAware.AssertNoConflict(concurrencyAware2);
            Assert.False(concurrencyAware.ConflictsWith(concurrencyAware2));

        }
コード例 #3
0
        public void Inconsistent_ETag_LastModified()
        {
            var concurrencyAware = new DummyConcurrencyAware()
            {
                ETag = "12345"
            };
            var concurrencyAware2 = new DummyConcurrencyAware()
            {
                LastModofied = DateTimeOffset.Now
            };

            Assert.Throws <InvalidOperationException>(() => concurrencyAware.AssertNoConflict(concurrencyAware2));
            Assert.Throws <InvalidOperationException>(() => concurrencyAware.ConflictsWith(concurrencyAware2));
        }
コード例 #4
0
        public void Conflict_ETagDifferent_LastModifiedNull()
        {
            var concurrencyAware = new DummyConcurrencyAware()
            {
                ETag = "12345"
            };
            var concurrencyAware2 = new DummyConcurrencyAware()
            {
                ETag = "12345x"
            };

            Assert.Throws <ConcurrencyConflictException>(() => concurrencyAware.AssertNoConflict(concurrencyAware2));

            Assert.True(concurrencyAware.ConflictsWith(concurrencyAware2));
        }
コード例 #5
0
        public void Conflict_ETagDifferent_LastModifiedNull()
        {
            var concurrencyAware = new DummyConcurrencyAware()
            {
                ETag = "12345"
            };
            var concurrencyAware2 = new DummyConcurrencyAware()
            {
                ETag = "12345x"
            };

            Assert.Throws<ConcurrencyConflictException>(() => concurrencyAware.AssertNoConflict(concurrencyAware2));

            Assert.True(concurrencyAware.ConflictsWith(concurrencyAware2));
        }
コード例 #6
0
        public void Conflict_ETagNull_LastModifiedDifferent()
        {
            var lastMod          = DateTimeOffset.Now;
            var concurrencyAware = new DummyConcurrencyAware()
            {
                LastModofied = lastMod
            };
            var concurrencyAware2 = new DummyConcurrencyAware()
            {
                LastModofied = lastMod.AddMilliseconds(1)
            };

            Assert.Throws <ConcurrencyConflictException>(() => concurrencyAware.AssertNoConflict(concurrencyAware2));

            Assert.True(concurrencyAware.ConflictsWith(concurrencyAware2));
        }
コード例 #7
0
        public void NoConflict_ETagNull_LastModifiedEqual()
        {
            var lastMod          = DateTimeOffset.Now;
            var concurrencyAware = new DummyConcurrencyAware()
            {
                LastModofied = lastMod
            };
            var concurrencyAware2 = new DummyConcurrencyAware()
            {
                LastModofied = lastMod
            };


            concurrencyAware.AssertNoConflict(concurrencyAware2);
            Assert.False(concurrencyAware.ConflictsWith(concurrencyAware2));
        }
コード例 #8
0
        public void Conflict_ETagNull_LastModifiedDifferent()
        {
            var lastMod = DateTimeOffset.Now;
            var concurrencyAware = new DummyConcurrencyAware()
            {
                LastModified = lastMod
            };
            var concurrencyAware2 = new DummyConcurrencyAware()
            {
                LastModified = lastMod.AddMilliseconds(1)
            };

            Assert.Throws<ConcurrencyConflictException>(() => concurrencyAware.AssertNoConflict(concurrencyAware2));
            
            Assert.True(concurrencyAware.ConflictsWith(concurrencyAware2));
        }
コード例 #9
0
        public void NoConflict_ETagNull_LastModifiedEqual()
        {
            var lastMod = DateTimeOffset.Now;
            var concurrencyAware = new DummyConcurrencyAware()
            {
                LastModified = lastMod
            };
            var concurrencyAware2 = new DummyConcurrencyAware()
            {
                LastModified = lastMod
            };

            
            concurrencyAware.AssertNoConflict(concurrencyAware2);
            Assert.False(concurrencyAware.ConflictsWith(concurrencyAware2));
        }
コード例 #10
0
        public void Inconsistent_ETag_LastModified()
        {
            var concurrencyAware = new DummyConcurrencyAware()
            {
                ETag = "12345"
            };
            var concurrencyAware2 = new DummyConcurrencyAware()
            {
                LastModified = DateTimeOffset.Now
            };

            Assert.Throws<InvalidOperationException>(() => concurrencyAware.AssertNoConflict(concurrencyAware2));
            Assert.Throws<InvalidOperationException>(() => concurrencyAware.ConflictsWith(concurrencyAware2));

        }