public void Enumerates_pairs_with_subject_key_and_dynamic_subject_value() { var g = new DynamicGraph(); g.LoadFromString(@" <urn:s> <urn:s> <urn:s> . # 1 (subject) <urn:s> <urn:s> <urn:p> . <urn:s> <urn:s> <urn:o> . <urn:s> <urn:p> <urn:s> . <urn:s> <urn:p> <urn:p> . <urn:s> <urn:p> <urn:o> . <urn:s> <urn:o> <urn:s> . <urn:s> <urn:o> <urn:p> . <urn:s> <urn:o> <urn:o> . <urn:p> <urn:s> <urn:s> . # 2 (subject) <urn:p> <urn:s> <urn:p> . <urn:p> <urn:s> <urn:o> . <urn:p> <urn:p> <urn:s> . <urn:p> <urn:p> <urn:p> . <urn:p> <urn:p> <urn:o> . <urn:p> <urn:o> <urn:s> . <urn:p> <urn:o> <urn:p> . <urn:p> <urn:o> <urn:o> . <urn:o> <urn:s> <urn:s> . # 3 (subject) <urn:o> <urn:s> <urn:p> . <urn:o> <urn:s> <urn:o> . <urn:o> <urn:p> <urn:s> . <urn:o> <urn:p> <urn:p> . <urn:o> <urn:p> <urn:o> . <urn:o> <urn:o> <urn:s> . <urn:o> <urn:o> <urn:p> . <urn:o> <urn:o> <urn:o> . "); var s = UriFactory.Create("urn:s"); var p = UriFactory.Create("urn:p"); var o = UriFactory.Create("urn:o"); using (var actual = g.Cast <KeyValuePair <Uri, object> >().GetEnumerator()) { using (var expected = new[] { s, p, o }.Cast <Uri>().GetEnumerator()) { while (expected.MoveNext() | actual.MoveNext()) { var keyNode = g.CreateUriNode(expected.Current); Assert.Equal(new KeyValuePair <Uri, object>(expected.Current, keyNode), actual.Current); Assert.IsType <DynamicNode>(actual.Current.Value); } } } }