public void TestGenotype_FromJSON()
        {
            var json = "{\"neurons\":[{\"innovation\":0,\"type\":4,\"mean\":0.5,\"sigma\":0,\"a\":0.5,\"b\":0.5,\"c\":0.5,\"d\":0.5},{\"innovation\":1,\"type\":4,\"mean\":0.5,\"sigma\":0,\"a\":0.5,\"b\":0.5,\"c\":0.5,\"d\":0.5},{\"innovation\":2,\"type\":4,\"mean\":0.5,\"sigma\":0,\"a\":0.5,\"b\":0.5,\"c\":0.5,\"d\":0.5}],\"synapses\":[{\"innovation\":0,\"weight\":0.5,\"from\":0,\"to\":1,\"enabled\":true},{\"innovation\":1,\"weight\":0.5,\"from\":0,\"to\":1,\"enabled\":true},{\"innovation\":2,\"weight\":0.5,\"from\":0,\"to\":1,\"enabled\":true}]}";
              var deserializedGenotype = Genotype.FromJSON(JSON.Deserialize(json));

              var comparer = new GenotypeEqualityComparer();
              Assert.That(comparer.Equals(genotype, deserializedGenotype));
        }
        public void TestGenotype_Clone()
        {
            var clonedGenotype = new Genotype(genotype);
              Assert.AreNotSame(genotype, clonedGenotype);
              Assert.AreNotSame(genotype.NeuronGenes, clonedGenotype.NeuronGenes);
              Assert.AreNotSame(genotype.SynapseGenes, clonedGenotype.SynapseGenes);

              var comparer = new GenotypeEqualityComparer();
              Assert.That(comparer.Equals(genotype, clonedGenotype));
        }