vendredi 5 juin 2015

Unit testing business logic

Any ideas on how to unit test business logic. Example of the business logic class

    namespace Template.BusinessLogic

{ public class ProjectBusiness : IProjectBusiness { public List GetAllProjects() { using (var Projectrepo = new ProjectRepository()) { return Projectrepo.GetAll().Select(x => new projectview() { project_id = x.project_id, project_name = x.project_name, project_desc = x.project_desc, project_scope = x.project_scope, project_assumptions = x.project_assumptions, project_budget = x.project_budget, est_start_date = x.est_start_date, est_end_date = x.est_end_date, status = x.status, client_name=x.client_name, project_manager=x.project_manager,

            }).ToList();
        }
    }

    public void Insert(project objprojectview)
    {
        using (var projectrepo = new ProjectRepository())
        {
            var project = new project
            {
                project_id = objprojectview.project_id,
                project_name = objprojectview.project_name,
                project_desc = objprojectview.project_desc,
                project_scope = objprojectview.project_scope,
                project_assumptions = objprojectview.project_assumptions,
                project_budget = objprojectview.project_budget,
                est_start_date = objprojectview.est_start_date,
                est_end_date = objprojectview.est_end_date,
                status = objprojectview.status,
                project_manager = objprojectview.project_manager,
                client = objprojectview.client,
                client_name = objprojectview.client_name
            };
            projectrepo.Insert(project);
        }
    }

    public project GetById(Int32 id)
    {
        using (var Projectrepo = new ProjectRepository())
        {
            return Projectrepo.GetById(id);
        }
    }

    public void Update(projectview objprojectview)
    {
        using (var Projectrepo = new ProjectRepository())
        {
            var project = new project
            {
                project_id = objprojectview.project_id,
                project_name = objprojectview.project_name,
                project_desc = objprojectview.project_desc,
                project_scope = objprojectview.project_scope,
                project_assumptions = objprojectview.project_assumptions,
                project_budget = objprojectview.project_budget,
                est_start_date = objprojectview.est_start_date,
                est_end_date = objprojectview.est_end_date,
                status = objprojectview.status,
                project_manager = objprojectview.project_manager,

                client_name = objprojectview.client_name
            };
            Projectrepo.Update(project);
        }
    }
}

}

Aucun commentaire:

Enregistrer un commentaire