コード例 #1
0
        public void SignInActivityTest()
        {
            #region 設定測試參數
            var testTokenValue   = Guid.Parse("4a01b7ed-27d7-4312-9a63-71c53a70dc81");
            var testStudentToken = Guid.Parse("c5f6f98b-2923-4b38-bb8c-b782f40a109b");
            var testCircleKey    = "9999testcourse";
            var testOuterKey     = string.Empty;
            var testPwd          = string.Empty;
            var testBeaconKey    = "61eb8d82-c4dc-404b-8598-ee48378764fb_12345_67890";
            var testDuration     = 1;
            var testStuId        = 5;//學生編號
            var testStatus       = 2;
            #endregion

            //呼叫測試methods
            var signIn_CreateActivity = hub.SignIn_CreateActivity(testTokenValue, testCircleKey, testBeaconKey, testDuration).Result; //建立點名活動
            testOuterKey = signIn_CreateActivity.Data.OuterKey.ToString();

            // var signIn_StopEvent = hub.SignIn_StopEvent(testCircleKey, testTokenValue, testOuterKey);//停止點名
            //var signIn_StartEvent = hub.SignIn_StartEvent(testCircleKey, testTokenValue, testOuterKey);//開始點名

            var signIn_PasswordRefresh = hub.SignIn_PasswordRefresh(testCircleKey, testTokenValue, testOuterKey);          //修改點名驗證碼
            testPwd = signIn_PasswordRefresh.Data;
            var signIn_PasswordSignIn = hub.SignIn_PasswordSignIn(testCircleKey, testStudentToken, testOuterKey, testPwd); //學生點名
            hub.SignIn_StopEvent(testCircleKey, testTokenValue, testOuterKey);                                             //停止點名

            var signIn_LoadMembers             = hub.SignIn_LoadMembers(testOuterKey);                                     //取得點名成員列表
            var signIn_LoadMembersResponseData = signIn_LoadMembers as BaseResponse <SignInEvent>;

            hub.SignIn_Modify(testCircleKey, testTokenValue, testOuterKey, testStuId, testStatus);//老師修改點名狀態


            //驗證server signIn_CreateActivity的caller資料
            client.Verify(m => m.appendActivity(It.IsAny <ActivitysViewModel>(), It.IsAny <string>()));
            Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsInstanceOfType(signIn_CreateActivity, typeof(BaseResponse <ActivitysViewModel>));
            // Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsTrue(signIn_CreateActivity.Success);

            //驗證server signIn_StartEvent的caller資料
            client.Verify(m => m.signIn_eventStart(It.IsAny <string>(), It.IsAny <SignInEvent>()));

            //驗證server signIn_StopEvent的caller資料
            client.Verify(m => m.signIn_eventStop(It.IsAny <string>(), It.IsAny <int>()));
            //  Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsInstanceOfType(signIn_StopEvent, typeof(BaseResponse<string>));
            //  Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsTrue(signIn_StopEvent.Success);

            //驗證server signIn_PasswordRefresh的caller資料
            client.Verify(m => m.signIn_PasswordChanged(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>()));
            Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsInstanceOfType(signIn_PasswordRefresh, typeof(BaseResponse <string>));
            Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsTrue(signIn_PasswordRefresh.Success);

            //驗證server signIn_LoadMembers的caller資料
            client.Verify(m => m.signIn_RenderPopup(It.IsAny <SignInEvent>()));
            Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsInstanceOfType(signIn_LoadMembers, typeof(BaseResponse <SignInEvent>));
            Microsoft.VisualStudio.TestTools.UnitTesting.Assert.IsTrue(signIn_LoadMembersResponseData.Success);

            //驗證server SignIn_Modify的caller資料
            client.Verify(m => m.signIn_StatusChanged(It.IsAny <string>(), It.IsAny <SignInLog>()));

            //驗證server updateSignIn的caller資料
            // client.Verify(m => m.signIn_Failed(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>()));

            if (showData)
            {
                //可下中斷點查看資料內容
                ShowData(client.Invocations);
            }
        }