def test_composite_dimension(self): original_A = ContinuousDimension(name='x', min=0, max=1) original_B = ContinuousDimension(name='x', min=2, max=3) original_C = ContinuousDimension(name='x', min=2.5, max=3.5) original_D = original_A.union(original_B) - original_C original_E = original_B - original_C original_F = original_A.union(original_E) serialized_A = json.dumps(original_A, cls=HypergridJsonEncoder, indent=2) serialized_B = json.dumps(original_B, cls=HypergridJsonEncoder, indent=2) serialized_C = json.dumps(original_C, cls=HypergridJsonEncoder, indent=2) serialized_D = json.dumps(original_D, cls=HypergridJsonEncoder, indent=2) serialized_E = json.dumps(original_E, cls=HypergridJsonEncoder, indent=2) serialized_F = json.dumps(original_F, cls=HypergridJsonEncoder, indent=2) A = json.loads(serialized_A, cls=HypergridJsonDecoder) B = json.loads(serialized_B, cls=HypergridJsonDecoder) C = json.loads(serialized_C, cls=HypergridJsonDecoder) D = json.loads(serialized_D, cls=HypergridJsonDecoder) E = json.loads(serialized_E, cls=HypergridJsonDecoder) F = json.loads(serialized_F, cls=HypergridJsonDecoder) self.assertTrue(A in original_A) self.assertTrue(B in original_B) self.assertTrue(C in original_C) self.assertTrue(D in original_D) self.assertTrue(E in original_E) self.assertTrue(F in original_F) self.assertTrue(original_A in A) self.assertTrue(original_B in B) self.assertTrue(original_C in C) self.assertTrue(original_D in D) self.assertTrue(original_E in E) self.assertTrue(original_F in F) self.assertTrue(0.5 in D) self.assertTrue(1.5 not in D) self.assertTrue(2.5 not in D) self.assertTrue(3.4 not in D) self.assertTrue(35 not in D) self.assertTrue(2 in E) self.assertTrue(2.5 not in E) self.assertTrue(0 in F and 1 in F and 1.5 not in F and 2 in F and 2.5 not in F)
def test_composite_dimension(self): original_A = ContinuousDimension(name='x', min=0, max=1) original_B = ContinuousDimension(name='x', min=2, max=3) original_C = ContinuousDimension(name='x', min=2.5, max=3.5) original_D = original_A.union(original_B) - original_C original_E = original_B - original_C original_F = original_A.union(original_E) serialized_A = json.dumps(original_A, cls=HypergridJsonEncoder, indent=2) serialized_B = json.dumps(original_B, cls=HypergridJsonEncoder, indent=2) serialized_C = json.dumps(original_C, cls=HypergridJsonEncoder, indent=2) serialized_D = json.dumps(original_D, cls=HypergridJsonEncoder, indent=2) serialized_E = json.dumps(original_E, cls=HypergridJsonEncoder, indent=2) serialized_F = json.dumps(original_F, cls=HypergridJsonEncoder, indent=2) A = json.loads(serialized_A, cls=HypergridJsonDecoder) B = json.loads(serialized_B, cls=HypergridJsonDecoder) C = json.loads(serialized_C, cls=HypergridJsonDecoder) D = json.loads(serialized_D, cls=HypergridJsonDecoder) E = json.loads(serialized_E, cls=HypergridJsonDecoder) F = json.loads(serialized_F, cls=HypergridJsonDecoder) assert A in original_A assert B in original_B assert C in original_C assert D in original_D assert E in original_E assert F in original_F assert original_A in A assert original_B in B assert original_C in C assert original_D in D assert original_E in E assert original_F in F assert 0.5 in D assert 1.5 not in D assert 2.5 not in D assert 3.4 not in D assert 35 not in D assert 2 in E assert 2.5 not in E assert 0 in F and 1 in F and 1.5 not in F and 2 in F and 2.5 not in F
def test_composite_dimension(self): original_A = ContinuousDimension(name='x', min=0, max=1) original_B = ContinuousDimension(name='x', min=2, max=3) original_C = ContinuousDimension(name='x', min=2.5, max=3.5) original_D = original_A.union(original_B) - original_C original_E = original_B - original_C original_F = original_A.union(original_E) serialized_A = OptimizerServiceEncoder.encode_continuous_dimension( original_A) serialized_B = OptimizerServiceEncoder.encode_continuous_dimension( original_B) serialized_C = OptimizerServiceEncoder.encode_continuous_dimension( original_C) serialized_D = OptimizerServiceEncoder.encode_composite_dimension( original_D) serialized_E = OptimizerServiceEncoder.encode_continuous_dimension( original_E) serialized_F = OptimizerServiceEncoder.encode_composite_dimension( original_F) A = OptimizerServiceDecoder.decode_continuous_dimension(serialized_A) B = OptimizerServiceDecoder.decode_continuous_dimension(serialized_B) C = OptimizerServiceDecoder.decode_continuous_dimension(serialized_C) D = OptimizerServiceDecoder.decode_composite_dimension(serialized_D) E = OptimizerServiceDecoder.decode_continuous_dimension(serialized_E) F = OptimizerServiceDecoder.decode_composite_dimension(serialized_F) assert A in original_A assert B in original_B assert C in original_C assert D in original_D assert E in original_E assert F in original_F assert original_A in A assert original_B in B assert original_C in C assert original_D in D assert original_E in E assert original_F in F assert 0.5 in D assert 1.5 not in D assert 2.5 not in D assert 3.4 not in D assert 35 not in D assert 2 in E assert 2.5 not in E assert 0 in F and 1 in F and 1.5 not in F and 2 in F and 2.5 not in F