Only register for updates from the currently visible library provider rather than all that have been allocated.

Got rid of rooted event handler on LibraryPrivider
This commit is contained in:
Lars Brubaker 2015-07-27 10:27:22 -07:00
parent c61f38fc1b
commit 67f86d0ab2
6 changed files with 34 additions and 13 deletions

View file

@ -64,6 +64,8 @@ namespace MatterControl.Tests
Thread.Sleep(3000); // wait for the library to finish initializing
LibraryProviderFileSystem testProvider = new LibraryProviderFileSystem(pathToMesh, "TestPath", null);
testProvider.DataReloaded += (sender, e) => { dataReloaded = true; };
Assert.IsTrue(testProvider.CollectionCount == 0, "Start with a new database for these tests.");
Assert.IsTrue(testProvider.ItemCount == 1, "Start with a new database for these tests.");
@ -82,6 +84,7 @@ namespace MatterControl.Tests
// add an item works correctly
LibraryProvider subProvider = testProvider.GetProviderForCollection(testProvider.GetCollectionItem(0));
subProvider.DataReloaded += (sender, e) => { dataReloaded = true; };
dataReloaded = false;
//itemAdded = false;
string subPathAndFile = Path.Combine(createdDirectory, meshFileName);
@ -121,6 +124,7 @@ namespace MatterControl.Tests
{
Datastore.Instance.Initialize();
LibraryProviderSQLite testProvider = new LibraryProviderSQLite(null, null);
testProvider.DataReloaded += (sender, e) => { dataReloaded = true; };
Thread.Sleep(3000); // wait for the library to finish initializing
Assert.IsTrue(testProvider.CollectionCount == 0, "Start with a new database for these tests.");
Assert.IsTrue(testProvider.ItemCount == 1, "Start with a new database for these tests.");
@ -174,8 +178,6 @@ namespace MatterControl.Tests
meshPathAndFileName = Path.Combine(pathToMesh, meshFileName);
dataReloaded = false;
LibraryProvider.DataReloaded.RegisterEvent((sender, e) => { dataReloaded = true; }, ref unregisterEvents);
}
[TearDown]