Declare the expected data to be passed to the JsonResult, then return it from the method that should be called given the conditions being tested for. Then assert that is was passed:
[Fact]
public async Task IndexOnGetNewsletterContentOptionsAsync_ReturnsJson_WhenMagazineAndNewsletterTypeSet()
{
// Arraange
authService.Setup(x => x.Allows(It.IsAny<ClaimsPrincipal>(), To.ViewNewsletters, To.EditNewsletter)).Returns(true);
indexModel.MagazineId = 1;
indexModel.NewsletterType = NewsletterType.News;
var expectedOptions = new List<SelectOption>() { new() { Value = 1, Text = "Option" } };
newsletterService.Setup(x => x.GetNewsletterContentOptions(It.IsAny<int>(), It.IsAny<NewsletterType>())).ReturnsAsync(expectedOptions);
// Act
var result = await indexModel.OnGetNewsletterContentOptionsAsync();
// Assert
var jsonResult = Assert.IsType<JsonResult>(result);
Assert.Equal(expectedOptions, jsonResult.Value);
}