public void MetadataDefaultValue_MetadataContainer()
        {
            MetadataContainer container;

            container = new MetadataContainer();
            Assert.AreEqual(0, container.Groups.Count, "Groups count is incorrect.");
            Assert.AreEqual(false, container.HasGroups, "HasGroups is incorrect.");
            Assert.IsNull(container.Id, "Id is incorrect.");
        }
        /// <summary>
        /// Creates a generic <see cref="MetadataContainer"/> with metadata within it.
        /// </summary>
        /// <param name="nullGroupId">True indicates that the <see cref="MetadataGroup"/> should be created with a
        /// null Id. False indicates that the <see cref="MetadataGroup"/> should have a valid Id.</param>
        /// <returns></returns>
        private MetadataContainer CreateMetadataContainer(bool nullGroupId)
        {
            Meta meta;
            MetadataContainer container;

            container = new MetadataContainer();
            container.Id = "m1";
            container.Groups.Add(new MetaGroup());
            if (!nullGroupId)
            {
                container.Groups[0].Id = "g1";
            }
            meta = new Meta();
            meta.Type = "type";
            container.Groups[0].Containers.Add(meta);

            return container;
        }
        /// <summary>
        /// Creates a metadata container with every element and attribute.
        /// </summary>
        /// <returns>The created metadata container.</returns>
        private MetadataContainer CreateMetadata()
        {
            MetadataContainer result;

            result = new MetadataContainer();
            result.Id = "metadata" + this.GetNextId(typeof(MetadataContainer));

            result.Groups.Add(this.CreateMetaGroup(true));

            return result;
        }