Skip to content

Instantly share code, notes, and snippets.

View HamidMosalla's full-sized avatar
🎠

Hamid Mosalla HamidMosalla

🎠
View GitHub Profile
public async Task<IActionResult> AddEmployeeClaim()
{
var user = await _userManager.GetUserAsync(User);
var claim = new Claim("Employee", "Mosalla");
var addClaimResult = await _userManager.AddClaimAsync(user, claim);
return View(addClaimResult);
}
public class Startup
{
public Startup(IConfiguration configuration, IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true);
Configuration = builder.Build();
}
[HttpGet]
public async Task<IActionResult> Detail(int id)
{
if (id == default(int)) return BadRequest();
var model = await _mediator.Send(new PortfolioByIdQuery { PortfolioId = id });
if (model == null) return NotFound();
var viewModel = _mapper.Map<Portfolio, PortfolioViewModel>(model);
public class PortfolioControllerTests
{
private readonly IMediator _mediatorFake;
private readonly IMapper _mapperFake;
private readonly PortfolioController _sut;
public PortfolioControllerTests()
{
_mediatorFake = A.Fake<IMediator>();
_mapperFake = A.Fake<IMapper>();
Fact]
public async Task Detail_PassesTheCorrectIdIntoPortfolioByIdQuery()
{
var mapperFake = A.Fake<IMapper>();
var mediatorMock = A.Fake<IMediator>();
var sut = new PortfolioController(mapperFake, mediatorMock);
var portfolioId = 2;
await sut.Detail(portfolioId);
namespace ApiResource.Controllers
{
[Produces("application/json")]
[Authorize]
[Route("api/ApiResourceWithoutPolicy")]
public class ApiResourceWithoutPolicyController : Controller
{
[HttpGet]
public IActionResult Get()
{
public void ConfigureServices(IServiceCollection services)
{
services.AddMvcCore()
.AddAuthorization()
.AddJsonFormatters();
services.AddAuthentication("Bearer")
.AddIdentityServerAuthentication(options =>
{
options.Authority = "http://localhost:5000";
public class Config
{
public static IEnumerable<ApiResource> GetApiResources()
{
return new List<ApiResource>
{
new ApiResource("Api1", "Warehouse Api")
};
}
}
public static List<TestUser> GetUsers()
{
return new List<TestUser>
{
new TestUser
{
SubjectId = "1",
Username = "mosalla",
Password = "password",
Claims = new[]
public void ConfigureServices(IServiceCollection services)
{
services.AddIdentityServer()
.AddDeveloperSigningCredential()
.AddInMemoryApiResources(Config.GetApiResources())
.AddInMemoryClients(Config.GetClients())
.AddTestUsers(Config.GetUsers())
.AddProfileService<ProfileService>();
}