public void NaiveBayesConstructorTest4()
{
int classes = 2;
int inputCount = 3;
double[] priors = { 0.4, 0.6 };
UniformDiscreteDistribution initial = new UniformDiscreteDistribution(0, 3);
var target = new NaiveBayes<UniformDiscreteDistribution>(classes, inputCount, initial, priors);
Assert.AreEqual(classes, target.ClassCount);
Assert.AreEqual(inputCount, target.InputCount);
Assert.AreEqual(priors.Length, target.Priors.Length);
Assert.AreEqual(0.4, target.Priors[0]);
Assert.AreEqual(0.6, target.Priors[1]);
Assert.AreEqual(2, target.Distributions.GetLength(0));
Assert.AreEqual(3, target.Distributions.GetLength(1));
for (int i = 0; i < classes; i++)
{
for (int j = 0; j < inputCount; j++)
{
Assert.AreNotSame(initial, target.Distributions[i, j]);
Assert.AreEqual(0, target.Distributions[i, j].Minimum);
Assert.AreEqual(3, target.Distributions[i, j].Maximum);
}
}
}