public StandardORMFramework(RequestContext context, IORMUsings baseUsings, IORMUsings concreteUsings,
                             IORMUsings interfaceUsings)
 {
     this._interfaceUsings = interfaceUsings;
     this._concreteUsings  = concreteUsings;
     this._context         = context;
     this._output          = context.Zeus.Output;
     this._baseUsings      = baseUsings;
 }
        public void standard_orm_class_with_entityspaces_usings()
        {
            // Arrange
            IORMUsings usings         = new EntitySpacesBaseORMUsings(_context);
            IORMUsings concreteUsings = null;

            IORMFramework orm = new DerivedWithUsingsFromStandardORMFramework(_context, usings, concreteUsings, null);

            // Act
            orm.Generate();
            StringBuilder expected = new StringBuilder();

            expected.AppendLine("using System;");
            expected.AppendLine("using System.Collections.Generic;");
            expected.AppendLine("using System.Data;");
            expected.AppendLine("using System.Linq;");
            expected.AppendLine("");
            expected.AppendLine("using BlogApp.DataObjects.EntitySpaces");
            expected.AppendLine("using BlogApp.DataObjects.Interfaces;");
            expected.AppendLine("using BlogApp.DataObjects.EntitySpaces.EntityMapper;");
            expected.AppendLine("namespace BlogApp.DataObjects.EntityFramework.SQLServer");
            expected.AppendLine("{");
            expected.AppendLine("\tpublic class BlogBaseDao : ICRUDDao<BlogApp.BusinessObjects.Blog>");
            expected.AppendLine("\t{");
            expected.AppendLine("\t");
            expected.AppendLine("\t}");
            expected.AppendLine("}");

            expected.AppendLine("namespace BlogApp.DataObjects.EntityFramework.SQLServer");
            expected.AppendLine("{");
            expected.AppendLine("\tpublic class SQLServerBlogDao : BlogBaseDao, IBlogDao");
            expected.AppendLine("\t{");
            expected.AppendLine("\t");
            expected.AppendLine("\t}");
            expected.AppendLine("}");

            expected.AppendLine("namespace BlogApp.DataObjects.Interfaces");
            expected.AppendLine("{");
            expected.AppendLine("\tpublic interface IBlogDao : ICRUDDao<BlogApp.BusinessObjects.Blog>");
            expected.AppendLine("\t{");
            expected.AppendLine("\t");
            expected.AppendLine("\t}");
            expected.AppendLine("}");

            // Assert
            Assert.AreEqual(expected.ToString(), _output.text);
        }
 public DerivedWithUsingsFromStandardORMFramework(RequestContext context, IORMUsings baseUsings, IORMUsings concreteUsings, IORMUsings interfaceUsings)
     : base(context, baseUsings, concreteUsings, interfaceUsings)
 {
 }
 public StandardORMFramework(RequestContext context, IORMUsings baseUsings, IORMUsings concreteUsings,
     IORMUsings interfaceUsings)
 {
     this._interfaceUsings = interfaceUsings;
     this._concreteUsings = concreteUsings;
     this._context = context;
     this._output = context.Zeus.Output;
     this._baseUsings = baseUsings;
 }
 public DerivedWithUsingsFromStandardORMFramework(RequestContext context, IORMUsings baseUsings, IORMUsings concreteUsings, IORMUsings interfaceUsings)
     : base(context, baseUsings, concreteUsings, interfaceUsings)
 {
 }