Beispiel #1
0
        public void T08_Password()
        {
            CMISViewModel vm = getInitializedViewModel();

            // Test one: Direct Password set and get on the view model
            string pw = "Hello World!";

            vm.CT.Password = pw;
            Assert.AreEqual(pw, vm.CT.Password);
            string encryptedPW = vm.CMISSettings.Password;

            Assert.AreNotEqual(pw, encryptedPW);

            // Verify password in export
            StoreDocumentResult expectedtResult = StoreDocumentResult.DefaultResult();

            expectedtResult.Password = pw;

            CMISClientMock cmisClient = new CMISClientMock();
            CMISExport     export     = new CMISExport(cmisClient);
            SIEEBatch      batch      = createBatch(expectedtResult.Filename, expectedtResult.DocName);
            SIEEFieldlist  fieldlist  = batch[0].Fieldlist;

            // Default document export
            vm.LoadPropertiesHandler();
            Assert.IsTrue(vm.TT.PropertiesLoaded);
            Assert.AreEqual(6, vm.TT.Properties.Count);
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedtResult.Compare(cmisClient.SDR);
        }
Beispiel #2
0
        private CMISViewModel getInitializedViewModel()
        {
            CMISViewModel vm = getViewModel();

            Assert.IsFalse(vm.DataLoaded);
            Assert.IsFalse(vm.TT.PropertiesLoaded);
            Assert.IsTrue(vm.FT.WarningVisible);
            Assert.AreEqual(0, vm.SelectedTab);

            vm.LoadRepositoriesButtonHandler();
            Assert.IsFalse(vm.DataLoaded);

            vm.ConnectdButtonHandler();
            Assert.IsTrue(vm.DataLoaded);
            Assert.IsFalse(vm.TT.PropertiesLoaded);
            Assert.IsTrue(vm.FT.WarningVisible);
            Assert.AreEqual(1, vm.SelectedTab);

            vm.ActivateTab("typesTab");
            vm.TT.SetSelectTypeHandler(vm.TT.Types[0]);
            Assert.IsFalse(vm.TT.PropertiesLoaded);
            Assert.AreEqual(vm.TT.SelectedCulture, CultureInfo.CurrentCulture);

            vm.FT.SetSelectedFolderHandler(vm.FT.Folders[0]);
            Assert.IsFalse(vm.FT.WarningVisible);

            Assert.IsNull(SIEEMessageBox.LastMessage);
            return(vm);
        }
Beispiel #3
0
        public void T05_MultiTabLogic()
        {
            CMISViewModel vm = getInitializedViewModel();

            Assert.IsFalse(vm.TT.PropertiesLoaded);
            Assert.IsFalse(vm.FT.WarningVisible);
            Assert.IsTrue(vm.TT.Warning.IndexOf("properties") > 0);
            Assert.IsTrue(vm.FT.Warning.IndexOf("folder") > 0);

            CMISClientMock cmisClient = vm.CMISClient as CMISClientMock;

            cmisClient.VersionableType = true;
            vm.TT.SetSelectTypeHandler(vm.TT.Types[0]);
            vm.LoadPropertiesHandler();
            Assert.IsTrue(vm.TT.PropertiesLoaded);
            Assert.IsFalse(vm.FT.WarningVisible);

            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddVersion;
            Assert.IsFalse(vm.FT.WarningVisible);

            cmisClient.VersionableType = false;
            vm.TT.SetSelectTypeHandler(vm.TT.Types[0]);
            vm.LoadPropertiesHandler();
            Assert.IsTrue(vm.FT.WarningVisible);
            Assert.IsTrue(vm.FT.Warning.IndexOf("version") > 0);
        }
        public CMISViewModel_FT(CMISViewModel vm)
        {
            this.vm  = vm;
            settings = vm.CMISSettings;

            ConflictHandlingMethods = new List <ConflictHandlingMethod>()
            {
                new ConflictHandlingMethod()
                {
                    Name = "None", Value = CMISSettings.ConflictHandling.None
                },
                new ConflictHandlingMethod()
                {
                    Name = "Replace file", Value = CMISSettings.ConflictHandling.Replace
                },
                new ConflictHandlingMethod()
                {
                    Name = "Add consecutive number", Value = CMISSettings.ConflictHandling.AddNumber
                },
                new ConflictHandlingMethod()
                {
                    Name = "Add raondom string", Value = CMISSettings.ConflictHandling.AddBlurb
                },
                new ConflictHandlingMethod()
                {
                    Name = "Create new version", Value = CMISSettings.ConflictHandling.AddVersion
                },
            };
        }
Beispiel #5
0
 public CMISViewModel_DT(CMISViewModel vm)
 {
     this.vm  = vm;
     settings = vm.CMISSettings;
     nsp      = new NameSpecParser();
     Result   = nsp.Convert(settings.Specification);
 }
Beispiel #6
0
 public CMISViewModel_TT(CMISViewModel vm)
 {
     this.vm       = vm;
     this.settings = vm.CMISSettings;
     Warning       = "No properties loaded yet";
     Cultures      = CultureInfo.GetCultures(CultureTypes.AllCultures).OrderBy(n => n.DisplayName).ToList();
 }
Beispiel #7
0
        private CMISViewModel getViewModel()
        {
            SIEEMessageBox.LastMessage = null;
            CMISViewModel vm = new CMISViewModel(new CMISSettings(), new CMISClientMock());

            vm.CT.ServerURL = "http://MyServer";
            vm.CT.Username  = "******";
            vm.CT.Password  = "******";
            vm.Initialize(new CMIS_WPFControl());
            return(vm);
        }
Beispiel #8
0
        public void T07_SelectReposiory()
        {
            CMISViewModel vm = getViewModel();

            vm.LoadRepositoriesButtonHandler();
            Assert.AreEqual("Repository 1", vm.CT.SelectedRepository.Id);
            Assert.AreEqual(vm.CT.Repositories[0], vm.CT.SelectedRepository);
            vm.CT.SelectedRepository = vm.CT.Repositories[1];
            SIEESettings save = vm.Settings;

            vm = new CMISViewModel(vm.Settings, vm.CMISClient);
            Assert.AreEqual("Repository 2", vm.CT.SelectedRepository.Id);
            Assert.AreEqual(vm.CT.Repositories[1].Description, vm.CT.SelectedRepository.Description);
        }
Beispiel #9
0
 public CMISViewModel_CT(CMISViewModel vm)
 {
     this.vm      = vm;
     settings     = vm.CMISSettings;
     Repositories = new List <CMISRepository>();
     Cultures     = CultureInfo.GetCultures(CultureTypes.AllCultures).OrderBy(n => n.DisplayName).ToList();
     if (settings.Binding == TypeOfBinding.Atom)
     {
         AtomBinding = true;
     }
     else
     {
         BrowserBinding = true;
     }
     Warning = "Login not yet done";
 }
Beispiel #10
0
        public void T06_Serialization()
        {
            CMISViewModel vm = getInitializedViewModel();

            vm.CMISSettings.SerializedFolderPath = new List <string>()
            {
                "SerializedFolderPath"
            };
            vm.CMISSettings.SerializedTypePath = new List <string>()
            {
                "SerializedTypePath"
            };
            vm.CMISSettings.Properties = new ObservableCollection <CMISProperty>()
            {
                new CMISProperty()
                {
                    DisplayName = "one",
                    Id          = "1",
                    Selected    = true,
                    //TypeName = "String",
                    Type = CMISClientType.String,
                }
            };

            // Serialize -> deserialize -> serialize again -> compare strings
            string       xmlString    = Serializer.SerializeToXmlString(vm.Settings, System.Text.Encoding.Unicode);
            CMISSettings cmisSettings = (CMISSettings)Serializer.DeserializeFromXmlString(xmlString, typeof(CMISSettings), System.Text.Encoding.Unicode);
            string       xmlString1   = Serializer.SerializeToXmlString(cmisSettings, System.Text.Encoding.Unicode);

            Assert.AreEqual(xmlString, xmlString1);

            // Deserialize some older string
            //File.WriteAllText(@"c:\temp\CMISSettings-Serialized.xml", xmlString);
            xmlString    = Properties.Resources.CMISSettings_Serialized;
            cmisSettings = (CMISSettings)Serializer.DeserializeFromXmlString(xmlString, typeof(CMISSettings), System.Text.Encoding.Unicode);
        }
Beispiel #11
0
        public void T04_TypesTab()
        {
            CMISViewModel       vm             = getInitializedViewModel();
            StoreDocumentResult expectedResult = StoreDocumentResult.DefaultResult();

            // Default setting
            Assert.AreEqual(0, vm.TT.Properties.Count);

            // Select, deselect all
            vm.LoadPropertiesHandler();
            Assert.IsNull(SIEEMessageBox.LastMessage);
            Assert.AreEqual(6, vm.TT.Properties.Count);
            foreach (CMISProperty p in vm.TT.Properties)
            {
                Assert.IsFalse(p.Selected);
            }
            vm.TT.SelectAllHandler();
            foreach (CMISProperty p in vm.TT.Properties)
            {
                Assert.IsTrue(p.Selected);
            }
            vm.TT.DeselectAllHandler();
            foreach (CMISProperty p in vm.TT.Properties)
            {
                Assert.IsFalse(p.Selected);
            }

            // Create schema
            SIEEFieldlist fl = vm.Settings.CreateSchema();

            Assert.AreEqual(0, fl.Count);
            vm.TT.Properties[0].Selected = true;
            fl = vm.Settings.CreateSchema();
            Assert.AreEqual(1, fl.Count);
            Assert.AreEqual(vm.TT.Properties[0].Id, fl[0].Name);
        }
Beispiel #12
0
        public void T03_FolderTab()
        {
            CMISViewModel       vm             = getInitializedViewModel();
            StoreDocumentResult expectedResult = StoreDocumentResult.DefaultResult();

            CMISClientMock cmisClient = new CMISClientMock();
            CMISExport     export     = new CMISExport(cmisClient);

            // Default values
            Assert.AreEqual("/" + cmisClient.GetRootFolder().DisplayName, vm.FT.SelectedFolderPath);
            Assert.IsFalse(vm.FT.UseSubFolderField);
            Assert.AreEqual("FolderField", vm.FT.SubFolderField);
            Assert.IsFalse(vm.FT.UseSubFolderType);
            Assert.IsTrue(vm.FT.SubFolderTypeFixed);
            Assert.AreEqual("cmis:folder", vm.FT.SubFolderType);
            Assert.IsFalse(vm.FT.SubFolderTypeFromField);
            Assert.AreEqual("FolderTypeField", vm.FT.SubFolderTypeField);
            Assert.AreEqual(CMISSettings.ConflictHandling.None, vm.FT.SelectedConflictHandling);
            Assert.AreEqual(4, vm.FT.NumberOfDigits);
            Assert.AreEqual("Collapsed", vm.FT.NumberOfDigitsVisible);
            Assert.IsTrue(vm.FT.Major);
            Assert.AreEqual("Collapsed", vm.FT.VersioningVisible);

            // Visibility checks and logic
            vm.FT.SubFolderTypeFromField = true;
            Assert.IsFalse(vm.FT.SubFolderTypeFixed);
            vm.FT.SubFolderTypeFixed = true;
            Assert.IsFalse(vm.FT.SubFolderTypeFromField);
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.Replace;
            Assert.AreEqual("Collapsed", vm.FT.NumberOfDigitsVisible);
            Assert.AreEqual("Collapsed", vm.FT.VersioningVisible);
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddBlurb;
            Assert.AreEqual("Collapsed", vm.FT.NumberOfDigitsVisible);
            Assert.AreEqual("Collapsed", vm.FT.VersioningVisible);
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddNumber;
            Assert.AreEqual("Visible", vm.FT.NumberOfDigitsVisible);
            Assert.AreEqual("Collapsed", vm.FT.VersioningVisible);
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddVersion;
            Assert.AreEqual("Collapsed", vm.FT.NumberOfDigitsVisible);
            Assert.AreEqual("Visible", vm.FT.VersioningVisible);
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.None;

            // Default document export
            SIEEBatch     batch     = createBatch(expectedResult.Filename, expectedResult.DocName);
            SIEEFieldlist fieldlist = batch[0].Fieldlist;

            vm.LoadPropertiesHandler();
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.Compare(cmisClient.SDR);

            // SubFolderField
            vm.FT.UseSubFolderField = true;
            fieldlist.Add(new SIEEField()
            {
                Name = "FolderField", Value = "subFolder", ExternalId = "FolderField"
            });
            expectedResult.FinalFolder += "/subFolder";
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.UsedFolderType = vm.FT.SubFolderType; // Default is what export implements
            expectedResult.Compare(cmisClient.SDR);

            // SubFolderType
            vm.FT.UseSubFolderType = true;
            vm.FT.SubFolderType    = "cmis:myFolderType";
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.UsedFolderType = "cmis:myFolderType";
            expectedResult.Compare(cmisClient.SDR);

            // SubFolderFieldType
            vm.FT.SubFolderTypeFromField = true;
            fieldlist.Add(new SIEEField()
            {
                Name       = vm.FT.SubFolderTypeField,
                Value      = "cmis:anotherFolderType",
                ExternalId = vm.FT.SubFolderTypeField,
            });
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch);
            expectedResult.UsedFolderType = "cmis:anotherFolderType";
            expectedResult.Compare(cmisClient.SDR);

            // Conflict Handling : Replace
            cmisClient.ExistingDocument    = expectedResult.DocName + ".pdf";
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.Replace;
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.Compare(cmisClient.SDR);

            // Conflict Handling : None
            cmisClient.ExistingDocument    = expectedResult.DocName + ".pdf";
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.None;
            export.ExportBatch(vm.Settings, batch);
            expectedResult.OverwrittenExistingDocument = true;
            expectedResult.Compare(cmisClient.SDR);
            expectedResult.OverwrittenExistingDocument = false;
            cmisClient.SDR.OverwrittenExistingDocument = false;

            // Conflict Handling : AddBlurb
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddBlurb;
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.ExpectBlurb = true;
            expectedResult.Compare(cmisClient.SDR);
            expectedResult.ExpectBlurb = false;

            // Conflict Handling : AddNumber
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddNumber;
            vm.FT.NumberOfDigits           = 2;
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            string save = expectedResult.DocName;

            expectedResult.DocName += "_01";
            expectedResult.Compare(cmisClient.SDR);
            expectedResult.DocName = save;

            // Conflict Handling : AddVersion
            vm.FT.SelectedConflictHandling = CMISSettings.ConflictHandling.AddVersion;
            vm.FT.Major = true;
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.Updated        = true;
            expectedResult.Major          = true;
            expectedResult.CheckInComment = "OCC created version";
            expectedResult.Compare(cmisClient.SDR);
            vm.FT.Major = false;
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedResult.Major = false;
            expectedResult.Compare(cmisClient.SDR);
        }
Beispiel #13
0
        public void T01_ConnectionTab()
        {
            // Verify default values
            CMISViewModel vm = new CMISViewModel(new CMISSettings(), new CMISClientMock());

            Assert.IsFalse(vm.IsRunning);
            Assert.IsFalse(vm.DataLoaded);
            Assert.IsFalse(vm.CanConnect());
            Assert.AreEqual(0, vm.SelectedTab);
            Assert.AreEqual("http://<Server URL>", vm.CT.ServerURL);
            Assert.AreEqual(TypeOfBinding.Atom, vm.CT.TypeOfBinding);
            Assert.AreEqual(null, vm.CT.Username);
            Assert.AreEqual(string.Empty, vm.CT.Password);
            Assert.IsNull(vm.CT.SelectedRepository.Id);
            Assert.IsNull(vm.CT.SelectedRepository.Description);
            Assert.IsFalse(vm.CT.SecondaryTypesSupported);

            // Verify tab order
            CMIS_WPFControl wpfControl = new CMIS_WPFControl();

            wpfControl.DataContext = vm;
            Dictionary <int, string> tabs = new Dictionary <int, string>()
            {
                { 0, "connectionTab" },
                { 1, "folderTab" },
                { 2, "typesTab" },
                { 3, "documentTab" },
                { 4, "secondaryTypesTab" },
            };
            TabControl tc = (TabControl)LogicalTreeHelper.FindLogicalNode(wpfControl, "mainTabControl");

            for (int i = 0; i < tabs.Count; i++)
            {
                tc.SelectedIndex = i;
                TabItem ti = tc.SelectedItem as TabItem;
                Assert.AreEqual(tabs[i], ti.Name);
            }

            // Load repositories
            vm = getViewModel();
            Assert.IsFalse(vm.CanConnect());
            Assert.IsFalse(vm.DataLoaded);
            Assert.IsFalse(vm.CMISSettings.LoadRepositoriesPossible);
            Assert.IsFalse(vm.CMISSettings.ConnectPossible);

            vm = new CMISViewModel(vm.Settings, new CMISClientMock());
            Assert.IsFalse(vm.CanConnect());                          // no change
            Assert.IsFalse(vm.DataLoaded);                            // no change
            Assert.IsFalse(vm.CMISSettings.LoadRepositoriesPossible); // no change
            Assert.IsFalse(vm.CMISSettings.ConnectPossible);          // no change

            vm.LoadRepositoriesButtonHandler();
            Assert.AreEqual(3, vm.CT.Repositories.Count);
            Assert.IsTrue(vm.CanConnect());                          // change
            Assert.IsFalse(vm.DataLoaded);                           // no change
            Assert.IsTrue(vm.CMISSettings.LoadRepositoriesPossible); // change
            Assert.IsFalse(vm.CMISSettings.ConnectPossible);         // no change

            vm = new CMISViewModel(vm.Settings, new CMISClientMock());
            Assert.AreEqual(3, vm.CT.Repositories.Count);
            Assert.IsTrue(vm.CanConnect());                           // change
            Assert.IsFalse(vm.DataLoaded);                            // no change
            Assert.IsTrue(vm.CMISSettings.LoadRepositoriesPossible);  // change
            Assert.IsFalse(vm.CMISSettings.ConnectPossible);          // no change

            vm.CT.Username += "-1";                                   // invalidate connection settings
            Assert.IsFalse(vm.CanConnect());                          // change
            Assert.IsFalse(vm.DataLoaded);                            // no change
            Assert.IsFalse(vm.CMISSettings.LoadRepositoriesPossible); // change
            Assert.IsFalse(vm.CMISSettings.ConnectPossible);          // no change
            vm.LoadRepositoriesButtonHandler();

            // Connect
            Assert.AreEqual(vm.CT.SelectedRepository, vm.CT.Repositories.First());
            vm.ConnectdButtonHandler();
            Assert.IsNull(SIEEMessageBox.LastMessage);
            Assert.IsTrue(vm.CanConnect());                          // no change
            Assert.IsTrue(vm.DataLoaded);                            // change
            Assert.IsTrue(vm.CMISSettings.LoadRepositoriesPossible); // no change
            Assert.IsTrue(vm.CMISSettings.ConnectPossible);          // change
            Assert.AreEqual(vm.CT.SelectedRepository.Id, ((CMISClientMock)vm.CMISClient).CurrentRepository);

            // Connecting twice -> no change
            ((CMISClientMock)vm.CMISClient).CurrentRepository = null;
            vm.ConnectdButtonHandler();
            Assert.AreEqual(null, ((CMISClientMock)vm.CMISClient).CurrentRepository);

            // Change repository
            vm.CT.SelectedRepository = vm.CT.Repositories.Last();    // reselect
            Assert.IsTrue(vm.CanConnect());                          // no change
            Assert.IsFalse(vm.DataLoaded);                           // change
            Assert.IsTrue(vm.CMISSettings.LoadRepositoriesPossible); // no change
            Assert.IsFalse(vm.CMISSettings.ConnectPossible);         // change

            vm.ConnectdButtonHandler();
            Assert.IsNull(SIEEMessageBox.LastMessage);
            vm = new CMISViewModel(vm.Settings, new CMISClientMock());
            Assert.IsTrue(vm.CanConnect());                          // no change
            Assert.IsTrue(vm.DataLoaded);                            // no change
            Assert.IsTrue(vm.CMISSettings.LoadRepositoriesPossible); // no change
            Assert.IsTrue(vm.CMISSettings.ConnectPossible);          // no change
            Assert.AreEqual(vm.CT.SelectedRepository.Id, ((CMISClientMock)vm.CMISClient).CurrentRepository);

            // Binding type
            vm.CT.BrowserBinding = true;
            Assert.AreEqual(TypeOfBinding.Browser, vm.CMISSettings.Binding);
            Assert.IsFalse(vm.CT.AtomBinding);
            Assert.IsTrue(vm.CT.BrowserBinding);
            Assert.IsFalse(vm.CT.WebServiceBinding);
            vm.LoadRepositoriesButtonHandler();
            Assert.AreEqual(TypeOfBinding.Browser, vm.CMISClient.TypeOfBinding);
            vm.CT.WebServiceBinding = true;
            Assert.AreEqual(TypeOfBinding.WebService, vm.CMISSettings.Binding);
            Assert.IsFalse(vm.CT.AtomBinding);
            Assert.IsFalse(vm.CT.BrowserBinding);
            Assert.IsTrue(vm.CT.WebServiceBinding);
            vm.LoadRepositoriesButtonHandler();
            Assert.AreEqual(TypeOfBinding.WebService, vm.CMISClient.TypeOfBinding);
            vm.CT.AtomBinding = true;
            Assert.AreEqual(TypeOfBinding.Atom, vm.CMISSettings.Binding);
            Assert.IsTrue(vm.CT.AtomBinding);
            Assert.IsFalse(vm.CT.BrowserBinding);
            Assert.IsFalse(vm.CT.WebServiceBinding);
            vm.LoadRepositoriesButtonHandler();
            Assert.AreEqual(TypeOfBinding.Atom, vm.CMISClient.TypeOfBinding);
            Assert.AreEqual(vm.CT.Username, vm.CMISClient.Username);
            Assert.AreEqual(vm.CT.Password, vm.CMISClient.Password);
        }
Beispiel #14
0
        public void T02_BasicExport()
        {
            CMISViewModel vm = getInitializedViewModel();

            vm.CMISSettings.SelectedCultureInfoName = "en-US";
            StoreDocumentResult expectedtResult = StoreDocumentResult.DefaultResult();

            CMISClientMock cmisClient = new CMISClientMock();
            CMISExport     export     = new CMISExport(cmisClient);
            SIEEBatch      batch      = createBatch(expectedtResult.Filename, expectedtResult.DocName);
            SIEEFieldlist  fieldlist  = batch[0].Fieldlist;

            // Default document export
            vm.LoadPropertiesHandler();
            Assert.IsTrue(vm.TT.PropertiesLoaded);
            Assert.AreEqual(6, vm.TT.Properties.Count);
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedtResult.Compare(cmisClient.SDR);

            foreach (CMISProperty p in vm.TT.Properties)
            {
                p.Selected = true;
                object objectValue;
                string stringValue;
                switch (p.Type)
                {
                case CMISClientType.Boolean:
                    stringValue = "true";
                    objectValue = true;
                    break;

                case CMISClientType.Integer:
                    stringValue = "4711";
                    objectValue = 4711;
                    break;

                case CMISClientType.Decimal:
                    stringValue = "1.8";
                    objectValue = 1.8M;
                    break;

                case CMISClientType.DateTime:
                    stringValue = "11.03.2017";
                    objectValue = DateTime.Parse(stringValue, new CultureInfo("en-US"));
                    break;

                default: objectValue = stringValue = "Some string"; break;
                }
                fieldlist.Add(new SIEEField(p.Id, p.Id, stringValue));
                expectedtResult.Properties[p.Id] = objectValue;
                export.Init(vm.Settings);
                export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
                expectedtResult.Compare(cmisClient.SDR);
                if (p.Type != CMISClientType.String)
                {
                    fieldlist.Where(n => n.ExternalId == p.Id).First().Value = "Illegal value";
                    export.Init(vm.Settings);
                    export.ExportBatch(vm.Settings, batch); Assert.IsFalse(batch[0].Succeeded);
                }
                expectedtResult.Compare(cmisClient.SDR);
                fieldlist.Remove(fieldlist.Where(n => n.ExternalId == p.Id).First());
                expectedtResult.Properties.Remove(p.Id);
            }

            CMISProperty pror = vm.TT.Properties.Where(n => n.Type == CMISClientType.Decimal).First();

            pror.Selected = true;
            fieldlist.Add(new SIEEField(pror.Id, pror.Id, "1,8"));
            expectedtResult.Properties[pror.Id]     = 1.8M;
            vm.CMISSettings.SelectedCultureInfoName = "de-DE";
            export.Init(vm.Settings);
            export.ExportBatch(vm.Settings, batch); Assert.IsTrue(batch[0].Succeeded);
            expectedtResult.Compare(cmisClient.SDR);
        }
 public CMISViewModel_ST(CMISViewModel vm)
 {
     this.vm        = vm;
     this.settings  = vm.CMISSettings;
     SecondaryTypes = new ObservableCollection <SecondaryType>();
 }
        // Document Tab
        private void Button_AddTokenToFile(object sender, RoutedEventArgs e)
        {
            CMISViewModel vm = ((CMISViewModel)DataContext);

            vm.DT.AddTokenToFileHandler((string)((Button)sender).Tag);
        }