Esempio n. 1
0
 public void Initialize_CreatedNew_ReturnsTrue()
 {
     using (var mutex = new GlobalMutex("test"))
     {
         mutex.Unlink();
         Assert.That(mutex.Initialize(), Is.True);
     }
 }
Esempio n. 2
0
 public void Initialize_Existing_ReturnsFalse()
 {
     using (var mutex1 = new GlobalMutex("test"))
     {
         mutex1.Initialize();
         using (var mutex2 = new GlobalMutex("test"))
             Assert.That(mutex2.Initialize(), Is.False);
     }
 }
Esempio n. 3
0
 public void Lock_Reentrancy_DoesNotBlock()
 {
     using (var mutex = new GlobalMutex("test"))
     {
         mutex.Initialize();
         using (mutex.Lock())
         {
             using (mutex.Lock()) {}
         }
     }
 }
Esempio n. 4
0
        /// <summary>
        /// This method is used for testing purposes.
        /// </summary>
        internal static void Initialize(bool offlineMode, string sldrCachePath, DateTime embeddedAllTagsTime)
        {
            if (IsInitialized)
            {
                throw new InvalidOperationException("The SLDR has already been initialized.");
            }

            _sldrCacheMutex = new GlobalMutex("SldrCache");
            _sldrCacheMutex.Initialize();
            _offlineMode         = offlineMode;
            SldrCachePath        = sldrCachePath;
            _embeddedAllTagsTime = embeddedAllTagsTime;
        }
Esempio n. 5
0
 public void InitializeAndLock_Existing_ReturnsFalse()
 {
     using (var mutex1 = new GlobalMutex("test"))
     {
         mutex1.Initialize();
         using (var mutex2 = new GlobalMutex("test"))
         {
             bool createdNew;
             using (mutex2.InitializeAndLock(out createdNew)) {}
             Assert.That(createdNew, Is.False);
         }
     }
 }