def test_to_matrix(self):
     '''
     Test the to_matrix function with random vectors.
     '''
     for _ in range(ITERATIONS):
         indim = random_size()
         vec = np.random.randn(indim)
         result = to_matrix(vec)
         self.assertTrue(result.shape == (vec.shape[0], 1))
         self.assertTrue((result[:, 0] == vec).any())
 def test_add_sample(self):
     '''
     Tests the add_sample method.
     '''
     for _ in range(ITERATIONS):
         indim = random_size()
         outdim = random_size()
         coeff = np.random.randn(indim, outdim)
         model = UpdatingModel(indim, outdim)
         for _ in range(SAMPLES):
             inp = np.random.randn(indim)
             out = coeff.T.dot(to_matrix(inp))[:, 0]
             model.add_sample(inp, out)
         diff = sum(sum(abs(model.coeff.T - coeff)))
         self.assertTrue(diff < DIFF)