public void ExtendedTest() { String input = "</my/Päth>;rt=\"MyName\";if=\"/someRef/path\";ct=42;obs;sz=10"; Resource root = RemoteResource.NewRoot(input); RemoteResource my = new RemoteResource("my"); my.ResourceType = "replacement"; root.AddSubResource(my); Resource res = root.GetResource("/my/Päth"); Assert.IsNotNull(res); res = root.GetResource("my/Päth"); Assert.IsNotNull(res); res = root.GetResource("my"); res = res.GetResource("Päth"); Assert.IsNotNull(res); res = res.GetResource("/my/Päth"); Assert.IsNotNull(res); Assert.IsEqualTo(res.Name, "Päth"); Assert.IsEqualTo(res.Path, "/my/Päth"); Assert.IsEqualTo(res.ResourceType, "MyName"); Assert.IsEqualTo(res.InterfaceDescriptions[0], "/someRef/path"); Assert.IsEqualTo(42, res.ContentTypeCode); Assert.IsEqualTo(10, res.MaximumSizeEstimate); Assert.IsEqualTo(true, res.Observable); res = root.GetResource("my"); Assert.IsNotNull(res); Assert.IsEqualTo("replacement", res.ResourceTypes[0]); }