public void CanGetFormDataModelConfiguration() { FormDataModelProvider formDataModelProvider = ProviderFactory.GetInstance <FormDataModelFactory>(ProviderRepositoryFactory.Instance.Provider).GetDefaultProvider <FormDataModelProvider>(); Assert.AreEqual(formDataModelProvider.Name, "FormDataModelTest"); Assert.AreEqual(formDataModelProvider.XmlFileName, "FormDataModel.xml"); }
public void CanReadAddRemoveField() { FormDataModelProvider formDataModelProvider = ProviderFactory.GetInstance <FormDataModelFactory> (ProviderRepositoryFactory.Instance.Provider).GetDefaultProvider <FormDataModelProvider> (); Form currentForm = formDataModelProvider.GetForm("subripSubtitleForm"); Assert.AreEqual(currentForm.Id, "1"); Assert.AreEqual(currentForm.Fields.Count, 3); Assert.AreEqual(currentForm.Fields[1].Name, "endTime"); Assert.AreEqual(currentForm.Fields[0].DataType.LookupDesc, "TimeSpan"); Assert.AreEqual(currentForm.Fields[0].IsRequired, true); //add new field Field newField = new Field(); newField.Id = "4"; newField.Name = "Test"; newField.Caption = "Test Caption"; newField.DataType = formDataModelProvider.DataTypes[0]; newField.FieldLength = 3; currentForm.Fields.Add(newField); formDataModelProvider.SaveForm(currentForm); var xmlDoc = new XmlDocument(); xmlDoc.Load(formDataModelProvider.XmlFileName); var dataTypeNode = xmlDoc.DocumentElement.SelectSingleNode(String.Format("form[@name='{0}']", "subripSubtitleForm")); Assert.AreEqual(dataTypeNode.ChildNodes.Count, 4); Assert.AreEqual(dataTypeNode.ChildNodes [3].Attributes ["name"].Value, "Test"); //remove field currentForm = formDataModelProvider.GetForm("subripSubtitleForm"); currentForm.Fields.Remove("Test"); formDataModelProvider.SaveForm(currentForm); xmlDoc = new XmlDocument(); xmlDoc.Load(formDataModelProvider.XmlFileName); dataTypeNode = xmlDoc.DocumentElement.SelectSingleNode(String.Format("form[@name='{0}']", "subripSubtitleForm")); Assert.AreEqual(dataTypeNode.ChildNodes.Count, 3); }