+ public class ContainerTest
+ {
+
+ private TestContainer _container;
+
+ [SetUp]
+ public void Init ()
+ {
+ _container = new TestContainer ();
+ }
+
+
+ [Test]
+ public void AddRemove ()
+ {
+ TestComponent component = new TestComponent ();
+
+ _container.Add (component);
+ Assert.IsNotNull (component.Site, "#1");
+ Assert.IsTrue (_container.Contains (component), "#2");
+
+ _container.Remove (component);
+ Assert.IsNull (component.Site, "#3");
+ Assert.IsFalse (_container.Contains (component), "#4");
+
+#if NET_2_0
+ _container.Add (component);
+ _container.Remove_WithoutUnsiting (component);
+ Assert.IsNotNull (component.Site, "#5");
+ Assert.IsFalse (_container.Contains (component), "#6");
+#endif
+ }
+