< Summary

Class:Mklinker.XMLConfigSerializer
Assembly:Mklinker
File(s):/home/travis/build/rubenchristoffer/Mklinker/Mklinker/XMLConfigSerializer.cs
Covered lines:0
Uncovered lines:13
Coverable lines:13
Total lines:33
Line coverage:0% (0 of 13)
Covered branches:0
Total branches:2
Branch coverage:0% (0 of 2)

Metrics

MethodCyclomatic complexity NPath complexity Sequence coverage Branch coverage
Serialize(...)100%100%
Deserialize(...)200%0%

File(s)

/home/travis/build/rubenchristoffer/Mklinker/Mklinker/XMLConfigSerializer.cs

#LineLine coverage
 1using Mklinker.Abstractions;
 2using System.IO;
 3using System.Xml.Serialization;
 4using System.Runtime.Serialization;
 5
 6namespace Mklinker {
 7
 8  class XMLConfigSerializer : IConfigSerializer {
 9
 010    public string Serialize(IConfig config) {
 011      XmlSerializer serializer = new XmlSerializer(config.GetType());
 12
 013      using (StringWriter writer = new StringWriter()) {
 014        serializer.Serialize(writer, config);
 015        return writer.ToString();
 16      }
 017    }
 18
 019    public IConfig Deserialize(string serializedString) {
 020      if (serializedString.Length == 0)
 021        throw new SerializationException("Serialized string is empty");
 22
 23      // TODO: Fix specific type here later
 024      XmlSerializer serializer = new XmlSerializer(typeof(Config));
 25
 026      using (StringReader reader = new StringReader(serializedString)) {
 027        return (Config) serializer.Deserialize(reader);
 28      }
 029    }
 30
 31  }
 32
 33}