public void Should_be_able_to_scale_problems()
        {
            var prob = new svm_problem()
            {
                l = 2,
                x = new svm_node[][]
                {
                    new svm_node[]
                    {
                        new svm_node()
                        {
                            index = 1, value = 1
                        },
                        new svm_node()
                        {
                            index = 2, value = 2
                        }
                    },
                    new svm_node[]
                    {
                        new svm_node()
                        {
                            index = 1, value = 3
                        },
                        new svm_node()
                        {
                            index = 2, value = 4
                        }
                    }
                },
                y = new double[] { 0, 0 }
            };

            prob = prob.Scale(0, 1);
            Assert.IsTrue(prob.x[0].Single(x => x.index == 1).value == 0);
            Assert.IsTrue(prob.x[1].Single(x => x.index == 1).value == 1);

            Assert.IsTrue(prob.x[0].Single(x => x.index == 2).value == 0);
            Assert.IsTrue(prob.x[1].Single(x => x.index == 2).value == 1);
        }