public static void TestDynamicEnumSource() { TypeSet t = new TypeSet(); { DynamicEnumerationData d1 = new DynamicEnumerationData("d1", ParameterType.Parse("ed53be0d-c62a-4c0c-9f6e-e92d996bf3df")); DynamicEnumerationData d2 = new DynamicEnumerationData("d2", ParameterType.Parse("6980f4d7-4ad8-4bc0-bacb-4907d922d4e9")); t.AddDynamicEnum(d1); t.AddDynamicEnum(d2); var doc1 = new object(); var doc2 = new object(); var A1 = t.Make(d1.TypeId, "test1", Id <Parameter> .Parse("f95d62c4-b6c5-4c31-be69-c0cc3a35697e"), "default1", doc1) as IDynamicEnumParameter; var A2 = t.Make(d1.TypeId, "test2", Id <Parameter> .Parse("3ff9251e-bd1f-4543-9719-3b8e5992f8ce"), "default2", doc2) as IDynamicEnumParameter; var B1 = t.Make(d2.TypeId, "test3", Id <Parameter> .Parse("117a01a5-21df-4252-8120-8a11fe601ec6"), "default3", doc1) as IDynamicEnumParameter; A1.SetValueAction("shane").Value.Redo(); B1.SetValueAction("not").Value.Redo(); Assert.That(A1.Options, Is.EquivalentTo(new[] { "shane", "default2" })); Assert.That(A2.Options, Is.EquivalentTo(new[] { "shane", "default2" })); Assert.That(B1.Options, Is.EquivalentTo(new[] { "not" })); } }
private static IParameter CheckBasicMake(string name, Id <Parameter> id, string def, TypeSet t, ParameterType typeId, object document, bool useDefault) { IParameter parameter = t.Make(typeId, name, id, def, document); Assert.That(parameter.TypeId, Is.EqualTo(typeId)); Assert.That(parameter.Name, Is.EqualTo(name)); Assert.That(parameter.Id, Is.EqualTo(id)); if (useDefault) { Assert.That(parameter.ValueAsString(), Is.EqualTo(def)); } else { Assert.That(parameter.ValueAsString(), Is.EqualTo("")); } return(parameter); }