Ejemplo n.º 1
0
        public async Task UpdateAsyncTest()
        {
            //清空
            var repository = _serviceProvider.GetRequiredService <IUserinfoRepository>();
            await repository.ExecuteSqlRawAsync($"delete from {nameof(userinfo_us)} where 1=1");

            //创建
            var api   = WorkUrl(nameof(UserInfoController), nameof(UserInfoController.CreateAsync));
            var input = new UserInfoInput
            {
                Name = "wyll",
                Age  = 56,
                Sex  = "女"
            };
            var res = await _client.PostAsync(api, CreateHttpContent(input));

            if (!res.IsSuccessStatusCode)
            {
                Assert.Fail();
            }
            var json = await res.Content.ReadAsStringAsync();

            var keyvalue = JSONDeserialize <KeyOutput <int> >(json).KeyValue;

            //查询
            api = WorkUrl(nameof(UserInfoController), nameof(UserInfoController.SingleAsync), keyvalue);
            res = await _client.GetAsync(api);

            if (!res.IsSuccessStatusCode)
            {
                Assert.Fail();
            }
            json = await res.Content.ReadAsStringAsync();

            var output = JSONDeserialize <v_userinfo>(json);

            Assert.IsNotNull(output);
            //修改
            api = WorkUrl(nameof(UserInfoController), nameof(UserInfoController.UpdateAsync), keyvalue, output.timestamp.ToBase64());
            var updinput = new UserInfoUpdInput
            {
                Age = 21,
                Sex = "男"
            };

            res = await _client.PutAsync(api, CreateHttpContent(updinput));

            if (!res.IsSuccessStatusCode)
            {
                Assert.Fail();
            }
            //验证修改
            api = WorkUrl(nameof(UserInfoController), nameof(UserInfoController.SingleAsync), keyvalue);
            res = await _client.GetAsync(api);

            if (!res.IsSuccessStatusCode)
            {
                Assert.Fail();
            }
            json = await res.Content.ReadAsStringAsync();

            output = JSONDeserialize <v_userinfo>(json);
            Assert.IsNotNull(output);
            Assert.AreEqual(output.age, updinput.Age);
            Assert.AreEqual(output.sex, updinput.Sex);
            //删除
            api = WorkUrl(nameof(UserInfoController), nameof(UserInfoController.DeleteAsync), keyvalue, output.timestamp.ToBase64());
            res = await _client.DeleteAsync(api);

            if (!res.IsSuccessStatusCode)
            {
                Assert.Fail();
            }
        }
Ejemplo n.º 2
0
        public async Task <MsgOutput> UpdateAsync([FromRoute] int id, [FromRoute] byte[] timestamp, [FromBody] UserInfoUpdInput input)
        {
            await _userinfoService.UpdateAsync(id, timestamp, input);

            return(MsgOutputOption.OkMsg);
        }