Skip to content

Instantly share code, notes, and snippets.

View mizrael's full-sized avatar
😼
my cat owns the keyboard.

David Guida mizrael

😼
my cat owns the keyboard.
View GitHub Profile
@mizrael
mizrael / LoggerWrapper.cs
Last active October 6, 2017 21:09
using StructureMap to inject an typed NLog instance
public interface ILogger
{
void Log(LogLevel level, string text);
}
public enum LogLevel
{
Off = 0,
Trace,
Debug,
@mizrael
mizrael / detectCulture.js
Created August 4, 2017 11:03
How to detect current culture in javascript
/// https://stackoverflow.com/questions/25606730/get-current-locale-of-chrome#answer-42070353
var language;
if (window.navigator.languages) {
language = window.navigator.languages[0];
} else {
language = window.navigator.userLanguage || window.navigator.language;
}
@mizrael
mizrael / docker-compose.yml
Created June 4, 2017 22:34
wordpress + phpMySql + mySql on Docker
version: "2"
services:
wptest:
image: wordpress
ports:
- 8080:80
depends_on:
- mysql
mysql:
image: mariadb
@mizrael
mizrael / UpdateUserHandlerTests.cs
Created January 9, 2017 20:55
using Moq to mock a Repository and test an user update operation
using Xunit;
using Moq;
public class UpdateUserHandlerTests
{
[Fact]
public async Task should_Update_user_when_command_valid()
{
var command = new UpdateUser(id: Guid.NewGuid(), firstname: "lorem", lastname: "ipsum");
@mizrael
mizrael / CreateUserHandlerTests.cs
Last active January 9, 2017 20:56
using Moq to mock a Repository and test a user create operation
using Xunit;
using Moq;
public class CreateUserHandlerTests
{
[Fact]
public async Task should_create_user_when_command_valid()
{
var command = new CreateUser(id: Guid.NewGuid(), username: "loremipsum", email: "lorem@ipsum.com", firstname: "lorem", lastname:"ipsum");
@mizrael
mizrael / wp_shortcode_redirect.php
Last active July 15, 2016 15:17
Wordpress: how to handle redirects in shortcode
class my_shortcode{
public function __construct()
{
add_shortcode('my_shortcode', array($this, 'render_form'));
add_action( 'template_redirect', array($this, 'handle_form_post') );
}
function render_form(){
@mizrael
mizrael / BaseCommandHandler.cs
Created March 3, 2016 15:19
base class for Command Handlers used to enforce command validation
public abstract class BaseCommandHandler<TCommand> : IAsyncNotificationHandler<TCommand>
{
private readonly IValidator<TCommand> _validator;
protected BaseCommandHandler(IValidator<TCommand> validator = null)
{
_validator = validator;
}
public async Task Handle(TCommand command)
@mizrael
mizrael / MongoDatabaseFactory.cs
Created December 29, 2015 10:49
simple Mongodb database factory implementation
public class MongoDatabaseFactory : IMongoDatabaseFactory
{
public IMongoDatabase Connect(string connectionString, string dbName)
{
if(string.IsNullOrWhiteSpace(connectionString))
throw new ArgumentNullException("connectionString");
if (string.IsNullOrWhiteSpace(dbName))
throw new ArgumentNullException("dbName");
var dbClient = new MongoClient(connectionString);
@mizrael
mizrael / IMongoDatabaseFactory.cs
Created December 29, 2015 10:07
basic C# interface for a MongoDB database Factory
public interface IMongoDatabaseFactory
{
IMongoDatabase Connect(string connectionString, string dbName);
}
@mizrael
mizrael / RepositoryFactory.cs
Created December 29, 2015 10:07
simple Mongodb repository factory implementation
public class RepositoryFactory : IRepositoryFactory
{
private readonly IMongoDatabaseFactory _dbFactory;
public RepositoryFactory(IMongoDatabaseFactory dbFactory)
{
if (dbFactory == null)
throw new ArgumentNullException("dbFactory");
_dbFactory = dbFactory;
}