Ejemplo n.º 1
0
        public void CanGetFormDataModelConfiguration()
        {
            FormDataModelProvider formDataModelProvider = ProviderFactory.GetInstance <FormDataModelFactory>(ProviderRepositoryFactory.Instance.Provider).GetDefaultProvider <FormDataModelProvider>();

            Assert.AreEqual(formDataModelProvider.Name, "FormDataModelTest");
            Assert.AreEqual(formDataModelProvider.XmlFileName, "FormDataModel.xml");
        }
Ejemplo n.º 2
0
        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);
        }