Esempio n. 1
0
        public void LockExclusiveAndAccess()
        {
            var tableName = ObjectName.Parse("APP.test1");

            AdminQuery.LockTable(tableName, LockingMode.Exclusive);

            var expected = Is.InstanceOf <TransactionException>()
                           .And.TypeOf <LockTimeoutException>()
                           .And.Property("TableName").EqualTo(tableName)
                           .And.Property("AccessType").EqualTo(AccessType.Write);

            var query = (SqlQueryExpression)SqlExpression.Parse("SELECT * FROM APP.test1");
            Row row;

            Assert.Throws(expected, () => row = UserQuery.Select(query).FirstOrDefault());
        }