簡體   English   中英

在我的ASPNETUsers表中創建“假”用戶

[英]Create “fake” user in my ASPNETUsers Table

我正在運行一些集成測試,並且希望在ASPNETUsers表中創建一個“假”用戶。

我試圖做以下沒有運氣的事情。

所以我的設置如下:-

[SetUp]
public void Setup()
{
    var basePath = PlatformServices.Default.Application.ApplicationBasePath;
    var projectPath = Path.GetFullPath(Path.Combine(basePath, "../../../../SportsStore2.Tests"));

    var server = new TestServer(Utils.GetHostBuilder(new string[] { })
        .UseContentRoot(projectPath)
        .UseEnvironment("Development")
        .UseStartup<Startup>());

    _client = server.CreateClient();
}

然后插入如下:

var registerViewModel = new RegisterViewModel
{
    Email = "test@test.com",
    ConfirmPassword = "testing12345?",
    Password = "testing12345?"
};
_client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

var postResponseASPNETUser = await _client.PostAsJsonAsync("http://localhost:49406/Account/Register", registerViewModel);
var createdASPNETUser = await postResponseASPNETUser.Content.ReadAsStringAsync();

但是我得到了400條回應,“錯誤的請求”。

有什么想法我做錯了嗎?

感謝您的幫助和時間。

由於我沒有運氣並且無法找到為什么它沒有返回正確的響應,所以我沒有直接調用api,而是決定走另一條路線,並基本上在UsersController中創建了另一個Create Action,如下所示:

    [HttpPost("Create")]
    public IActionResult Create([FromBody] User user)
    {
        if (user == null)
            return BadRequest();

        var result = _usersService.Add(user, m => m.Name == user.Name);
        if (result)
        {
            return CreatedAtRoute("GetUsers", new { id = user.Id }, user);

        }
        return BadRequest("Item not added");
    }

    [HttpPost("CreateAspNetUsers")]
    public IActionResult CreateAspNetUsers([FromBody] RegisterViewModel registerViewModel)
    {
        if (registerViewModel == null)
            return BadRequest();

        var result = _aspNetUsersService.Add(registerViewModel, m => m.Name == registerViewModel.Email);
        if (result)
        {
            return CreatedAtRoute("GetUsers", registerViewModel);
        }
        return BadRequest("Item not added");
    }

這工作正常,並且給了我我想要的結果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM