def test_process__setattr__(self): lm = LinearRegression() lm_strategy = AdapterForFitPredictAdaptee(lm) step = Process(lm_strategy) self.assertEqual(step.copy_X, True) step.copy_X = False self.assertEqual(step.copy_X, False) self.assertEqual('copy_X' in dir(step), False)
def test_process__fit_lm(self): X = self.X y = self.y lm = LinearRegression() stepstrategy = AdapterForFitPredictAdaptee(lm) step = Process(stepstrategy) self.assertEqual(hasattr(step, 'coef_'), False) result = step.fit(X=X, y=y) self.assertEqual(hasattr(step, 'coef_'), True) self.assertEqual(step, result)
def test_process__get_params(self): lm = LinearRegression() lm_strategy = AdapterForFitPredictAdaptee(lm) step = Process(lm_strategy) result_lm = step.get_params() self.assertEqual(result_lm, { 'copy_X': True, 'fit_intercept': True, 'n_jobs': 1, 'normalize': False })
def test_process__fit_dbscan(self): X = self.X y = self.y db = DBSCAN() stepstrategy = AdapterForAtomicFitPredictAdaptee(db) step = Process(stepstrategy) self.assertEqual(hasattr(step, 'core_sample_indices_'), False) result_fit = step.fit(X=X) self.assertEqual(hasattr(step, 'core_sample_indices_'), False) self.assertEqual(step, result_fit) result_predict = step.predict(X=X)['predict'] self.assertEqual(hasattr(step, 'core_sample_indices_'), True) self.assertEqual(result_predict.shape, (self.size, ))
def test_process__predict(self): X = self.X y = self.y lm = LinearRegression() gm = GaussianMixture() lm_strategy = AdapterForFitPredictAdaptee(lm) gm_strategy = AdapterForFitPredictAdaptee(gm) step_lm = Process(lm_strategy) step_gm = Process(gm_strategy) step_lm.fit(X=X, y=y) step_gm.fit(X=X) result_lm = step_lm.predict(X=X) result_gm = step_gm.predict(X=X) self.assertEqual(list(result_lm.keys()), ['predict']) self.assertEqual(sorted(list(result_gm.keys())), sorted(['predict', 'predict_proba']))
def test_process__get_fit_signature(self): lm = LinearRegression() gm = GaussianMixture() lm_strategy = AdapterForFitPredictAdaptee(lm) gm_strategy = AdapterForFitPredictAdaptee(gm) step_lm = Process(lm_strategy) step_gm = Process(gm_strategy) result_lm = step_lm._get_fit_signature() result_gm = step_gm._get_fit_signature() self.assertEqual(result_lm, ['X', 'y', 'sample_weight']) self.assertEqual(result_gm, ['X', 'y'])
def test_process__repr__(self): lm = LinearRegression() lm_strategy = AdapterForFitPredictAdaptee(lm) step = Process(lm_strategy) result = step.__repr__() self.assertEqual(result, lm.__repr__())
def test_process__get_predict_signature_lm(self): lm = LinearRegression() lm_strategy = AdapterForFitPredictAdaptee(lm) step_lm = Process(lm_strategy) result_lm = step_lm._get_predict_signature() self.assertEqual(result_lm, ['X'])
def test_process__init(self): lm = LinearRegression() stepstrategy = AdapterForFitPredictAdaptee(lm) step = Process(stepstrategy) self.assertEqual(step._strategy, stepstrategy)