コード例 #1
0
        //workflows
        [Test] public void Check_Non_Git_Repo_Doesnt_Commit()
        {
            tmServer.assert_Not_Null().Git.UserData_Git_Enabled = false;
            var temp_Path_UserData = "nonGitRepo".tempDir();

            tmFileStorage.Path_UserData = temp_Path_UserData;

            tmFileStorage.path_UserData().assert_Folder_Exists()
            .assert_Folder_Empty()
            .assert_Is(temp_Path_UserData);

            admin.assert(() => tmFileStorage.load_UserData());

            tmFileStorage.users_XmlFile_Location().assert_Folder_Exists()        // before we create the default admin user (below)
            .assert_Folder_Empty();                                              // there should be no files in the userData's user's folder

            userData.tmUsers().assert_Empty();

            manageUsers.assert(() => userData.createDefaultAdminUser());

            tmFileStorage.users_XmlFile_Location().assert_Folder_Has_Files()     // now there should be files in the userData's user's folder
            .files().assert_Size_Is(1)
            .first().fileName().assert_Starts("admin");

            userData.tmUsers().assert_Size_Is(1);

            userData.tmUser("admin").assert_Not_Null();

            tmFileStorage.path_UserData().assert_False(path => path.isGitRepository())
            .files().assert_Not_Empty()
            .first().parentFolder().assert_Folder_File_Count_Is(1)
            .files(true).assert_Size_Is(2);

            Files.delete_Folder_Recursively(tmFileStorage.path_UserData())
            .assert_True("UserData Folder failed to delete");

            tmFileStorage.path_UserData().assert_Folder_Doesnt_Exist();

            tmServer.assert_Not_Null().Git.UserData_Git_Enabled = true;
        }
コード例 #2
0
        public static int           createDefaultAdminUser(this TM_UserData userData)
        {
            try
            {
                //var tmServer = userData.tmServer();

                if (userData.isNull())
                {
                    return(-1);
                }

                //if(userData.tmServer().Users_Create_Default_Admin.isFalse())
                //    return -1;

                var tmConfig = TMConfig.Current;
                lock (tmConfig)
                {
                    var defaultAdminUser_Name  = tmConfig.TMSecurity.Default_AdminUserName;
                    var defaultAdminUser_Pwd   = tmConfig.TMSecurity.Default_AdminPassword;
                    var defaultAdminUser_Email = tmConfig.TMSecurity.Default_AdminEmail;
                    var adminUser = userData.tmUser(defaultAdminUser_Name);

                    if (adminUser.notNull())
                    {
                        if (adminUser.SecretData.PasswordHash.notValid() || tmConfig.OnInstallation.ForceDefaultAdminPassword)
                        {
                            "[createDefaultAdminUser] reseting password since passwordHash was not valid and ForceDefaultAdminPassword was set".error();
                            adminUser.SecretData.PasswordHash = adminUser.createPasswordHash(defaultAdminUser_Pwd);
                            adminUser.event_User_Updated(); //adminUser.saveTmUser();
                        }
                        if (adminUser.GroupID != (int)UserGroup.Admin)
                        {
                            "[createDefaultAdminUser] admin user was not admin (changed to admin)".error();
                            adminUser.GroupID = (int)UserGroup.Admin;
                            adminUser.event_User_Updated(); //adminUser.saveTmUser();
                        }
                        return(adminUser.UserID);
                    }
                    "[createDefaultAdminUser] admin user didn't exist (creating it)".debug();
                    var userId = userData.newUser(defaultAdminUser_Name, defaultAdminUser_Pwd, defaultAdminUser_Email, 1);
                    adminUser = userId.tmUser();
                    adminUser.AccountStatus.ExpirationDate = DateTime.Now.AddYears(10); // default to setting the expiry value to 10 years in the future
                    adminUser.event_User_Updated();                                     //adminUser.saveTmUser();
                    return(userId);
                }
            }
            catch (Exception ex)
            {
                ex.log("[TM_UserData][createDefaultAdminUser]");
                return(-1);
            }
        }