TeamMentor.UnitTests.TM_Website.Test_WebServices_Users.TM_QA_Config_Setup_TestUsers C# (CSharp) Method

TM_QA_Config_Setup_TestUsers() private method

private TM_QA_Config_Setup_TestUsers ( ) : void
return void
        public void TM_QA_Config_Setup_TestUsers()
        {
            Assert.IsTrue   (QAConfig.Url_Target_TM_Site.valid());        // target server is set
            Assert.IsTrue   (QAConfig.Default_Admin_User.valid());        // we have an admin username and password
            Assert.IsTrue   (QAConfig.Default_Admin_Pwd .valid());
            Assert.AreEqual (QAConfig.TestUsers.size() , 3      );        // there are test users
            Assert.IsNull   (webServices.Cached_CurrentUser     );        // not logged in

            //login as admin
            Assert.IsTrue   (webServices.login_with_Pwd(QAConfig.Default_Admin_User, QAConfig.Default_Admin_Pwd));
            Assert.IsTrue   (webServices.RBAC_IsAdmin());

            var adminUser  = webServices.Cached_CurrentUser;

            Assert.IsNotNull(adminUser);
            Assert.AreEqual (adminUser.UserName,QAConfig.Default_Admin_User);

            foreach(var testUser in QAConfig.testUsers())
            {
                var tmUser = webServices.user(testUser.UserName);
                if(tmUser.notNull())
                    webServices.delete_User(tmUser);

                var newUser = new NewUser
                    {
                        Username = testUser.UserName,
                        Password = testUser.Password,
                        Email    = testUser.Email,
                        GroupId  = testUser.GroupId,
                    };
                var userId = webServices.add_User(newUser);
                Assert.Greater(userId,0);

                tmUser = webServices.user(testUser.UserName);

                Assert.IsNotNull(tmUser);

                testUser.UserId    = tmUser.UserId;
                testUser.AuthToken = webServices.user_AuthToken(tmUser.UserId);
            }
            QAConfig.save_QAConfig();
        }