Exemplo n.º 1
0
        public void LegacySettings_SQlite_SaveLoggingPath_Exists()
        {
            var newAuditsFilePath = "falsepath7";

            //arrange
            var sourceFilePath = Config.Legacy.AuditFilePath;

            var mockIFile = new Mock <IFile>();

            mockIFile.Setup(o => o.Exists(It.IsAny <string>())).Returns(true).Verifiable();
            mockIFile.Setup(c => c.Copy(It.IsAny <string>(), It.IsAny <string>())).Verifiable();
            mockIFile.Setup(o => o.ReadAllText("some path")).Returns("{}");
            var mockDirectory = new Mock <IDirectory>();

            mockDirectory.Setup(d => d.CreateIfNotExists(It.IsAny <string>())).Returns(newAuditsFilePath).Verifiable();

            var auditSettings = new LegacySettings("some path", mockIFile.Object, mockDirectory.Object);

            auditSettings.AuditFilePath = "Audits File Path";
            //act
            var actual = auditSettings.SaveLoggingPath(sourceFilePath);

            Assert.IsTrue(actual);
            actual = auditSettings.SaveLoggingPath(newAuditsFilePath);
            Assert.IsTrue(actual);

            mockIFile.Verify();
            mockDirectory.Verify();
        }
Exemplo n.º 2
0
        private List <ServerViewModel> DiscoverServers(bool search)
        {
            var list = new List <ServerViewModel>();

            var profiles = Config.GetGlobal <List <ConnectionProfile> >("connection.profiles", new List <ConnectionProfile>());

            foreach (ConnectionProfile profile in profiles)
            {
                var existing = list.FirstOrDefault((sv) => {
                    return(sv.Name.Equals(profile.Server, StringComparison.CurrentCultureIgnoreCase));
                });
                if (existing == null)
                {
                    list.Add(CreateServerViewModel(profile.Server));
                }
            }

            LegacySettings.TraverseSubKeys("Client", "UserProfiles", (key) => {
                ConnectionProfile profile = new ConnectionProfile();
                var server = key.GetValue("DatabaseServer") as string;

                var existing = list.FirstOrDefault((sv) => {
                    return(sv.Name.Equals(server, StringComparison.CurrentCultureIgnoreCase));
                });

                if (server != null && existing == null)
                {
                    list.Add(CreateServerViewModel(server));
                }
            });

            if (search)
            {
                DataTable dt = SmoApplication.EnumAvailableSqlServers(false);
                if (dt.Rows.Count > 0)
                {
                    foreach (DataRow dr in dt.Rows)
                    {
                        var server   = dr["Name"] as string;
                        var existing = list.FirstOrDefault((sv) => {
                            return(sv.Name.Equals(server, StringComparison.CurrentCultureIgnoreCase));
                        });

                        if (!string.IsNullOrEmpty(server) && existing == null)
                        {
                            list.Add(CreateServerViewModel(server));
                        }
                    }
                }
            }

            return(list);
        }
Exemplo n.º 3
0
        public void LegacySettings_SQlite_AuditFilePath_Get()
        {
            //arrange
            var mockIFile = new Mock <IFile>();

            mockIFile.Setup(o => o.Exists(It.IsAny <string>())).Returns(false);
            var mockDirectory = new Mock <IDirectory>();

            var auditingSettings = new LegacySettings("some path", mockIFile.Object, mockDirectory.Object);

            var result = auditingSettings.Get();

            Assert.IsNotNull(result);
            Assert.AreEqual("C:\\ProgramData\\Warewolf\\Audits", result.AuditFilePath);
        }
Exemplo n.º 4
0
        public void LegacySettings_Get_Settings()
        {
            const string expectedEndpoint = @"ws://127.0.0.1:5000/ws";
            const string expectedPath     = @"C:\ProgramData\Warewolf\Audits";

            //arrange
            var mockIFile = new Mock <IFile>();

            mockIFile.Setup(o => o.Exists(It.IsAny <string>())).Returns(false);
            var mockDirectory = new Mock <IDirectory>();

            var auditSettings = new LegacySettings("some path", mockIFile.Object, mockDirectory.Object);

            var result = auditSettings.Get();

            Assert.IsNotNull(result);
            Assert.AreEqual(expectedEndpoint, result.Endpoint);
            Assert.AreEqual(expectedPath, result.AuditFilePath);
        }
Exemplo n.º 5
0
        public void LegacySettings_SaveIfNotExists()
        {
            var mockIFile = new Mock <IFile>();

            mockIFile.Setup(o => o.Exists(It.IsAny <string>())).Returns(false).Verifiable();
            mockIFile.Setup(o => o.WriteAllText(LegacySettings.SettingsPath, It.IsAny <string>()));
            var mockDirectory = new Mock <IDirectory>();

            mockDirectory.Setup(o => o.CreateIfNotExists(Path.GetDirectoryName(LegacySettings.SettingsPath))).Returns(LegacySettings.SettingsPath);

            //act
            var auditSettings = new LegacySettings("some path", mockIFile.Object, mockDirectory.Object);

            auditSettings.SaveIfNotExists();

            //assert
            mockIFile.Verify();
            mockDirectory.Verify();
        }
Exemplo n.º 6
0
        private void SetupProfiles()
        {
            cmbProfile.ItemsSource = null;
            _profiles = Config.GetGlobal <List <ConnectionProfile> >("connection.profiles", new List <ConnectionProfile>());
            String lastProfile = Config.GetGlobal <string>("connection.lastprofile", null);

            if (!Config.GetGlobal <bool>("connection.skiplegacyimport", false))
            {
                LegacySettings.TraverseSubKeys("Client", "UserProfiles", (key) => {
                    ConnectionProfile profile = new ConnectionProfile();
                    string name      = key.Name;
                    profile.Name     = key.Name.Substring(name.LastIndexOf('\\') + 1);
                    profile.Server   = key.GetValue("DatabaseServer") as string;
                    profile.Database = key.GetValue("DatabaseName") as string;
                    profile.LastUser = key.GetValue("LastUser") as string;
                    profile.Timeout  = key.GetValue("CommandTimeout") as Nullable <Int32>;
                    _profiles.Add(profile);
                });

                if (lastProfile == null)
                {
                    lastProfile = LegacySettings.GetRegSetting("Client", "UserProfiles", "LastUsedProfile", "");
                }

                // Save the new list
                Config.SetGlobal("connection.profiles", _profiles);
                // and we don'note need to do this again!
                Config.SetGlobal("connection.skiplegacyimport", true);
            }

            cmbProfile.ItemsSource = _profiles;

            if (!String.IsNullOrEmpty(lastProfile))
            {
                // Look in the list for the profile with the same name.
                ConnectionProfile lastUserProfile = _profiles.Find((item) => { return(item.Name.Equals(lastProfile)); });
                if (lastUserProfile != null)
                {
                    cmbProfile.SelectedItem = lastUserProfile;
                }
            }
        }
Exemplo n.º 7
0
        public void LegacySettings_SaveSqlite_LoggingPath_DoesNot_Exist()
        {
            var newAuditsFilePath = "falsepath7";

            //arrange
            var sourceFilePath = Config.Legacy.AuditFilePath;

            var mockIFile = new Mock <IFile>();

            mockIFile.Setup(o => o.Exists(It.IsAny <string>())).Returns(false);
            var mockDirectory = new Mock <IDirectory>();

            var auditingSettings = new LegacySettings("some path", mockIFile.Object, mockDirectory.Object);

            //act
            var actual = auditingSettings.SaveLoggingPath(sourceFilePath);

            Assert.IsFalse(actual);

            actual = auditingSettings.SaveLoggingPath(newAuditsFilePath);
            //assert
            Assert.IsFalse(actual);
        }