Exemplo n.º 1
0
            public void TestModuleIntegration()
            {
                var schema = "usr";

                Startup.DropSchemaObjects(schema); //start from scratch

                // Runs integrated app by Randy
                _app = new EntityApp();
                var area        = _app.AddArea(schema);
                var persModule  = new Bob.PersonModule(area);
                var loginModule = new Alice.LoginModule(area, typeof(IPersonExt));

                // Now replace original entities with new interfaces;
                // Alice's IUserStub is already replaced by Randy's IPersonExt.
                _app.ReplaceEntity(typeof(Alice.ILogin), typeof(IAppLogin));
                _app.ReplaceEntity(typeof(Bob.IPerson), typeof(IPersonExt));
                // activate
                Startup.ActivateApp(_app);

                //Test the resulting solution
                var session = _app.OpenSession();
                var pers    = session.NewEntity <IPersonExt>();

                pers.FirstName = "John";
                pers.LastName  = "Dow";
                pers.BirthDate = new DateTime(1970, 5, 1);
                pers.Gender    = Gender.Male;
                var login   = session.NewEntity <IAppLogin>();
                var loginId = login.Id;

                login.User           = pers;
                login.UserName       = "******";
                login.FriendlyName   = "JohnD";
                login.PasswordHash   = 123;
                login.EmployeeNumber = "E111";
                session.SaveChanges();

                //Let's try to login the user we created using Alice's method
                session = _app.OpenSession();
                var johnLogin = Alice.LoginModule.Login(session, "johnd", 123);
                var cmd       = session.GetLastCommand();

                Assert.IsNotNull(johnLogin, "Login failed");
            } //method
Exemplo n.º 2
0
            public void TestModuleIntegration()
            {
                var schema = "usr";
                SetupHelper.DropSchemaObjects(schema); //start from scratch

                // Runs integrated app by Randy
                _app = new EntityApp();
                var area = _app.AddArea(schema);
                var persModule = new Bob.PersonModule(area);
                var loginModule = new Alice.LoginModule(area, typeof(IPersonExt));
                // Now replace original entities with new interfaces;
                // Alice's IUserStub is already replaced by Randy's IPersonExt.
                _app.ReplaceEntity(typeof(Alice.ILogin), typeof(IAppLogin));
                _app.ReplaceEntity(typeof(Bob.IPerson), typeof(IPersonExt));
                // activate
                SetupHelper.ActivateApp(_app);

                //Test the resulting solution
                var session = _app.OpenSession();
                var pers = session.NewEntity<IPersonExt>();
                pers.FirstName = "John";
                pers.LastName = "Dow";
                pers.BirthDate = new DateTime(1970, 5, 1);
                pers.Gender = Gender.Male;
                var login = session.NewEntity<IAppLogin>();
                var loginId = login.Id;
                login.User = pers;
                login.UserName = "******";
                login.FriendlyName = "JohnD";
                login.PasswordHash = 123;
                login.EmployeeNumber = "E111";
                session.SaveChanges();

                //Let's try to login the user we created using Alice's method
                session = _app.OpenSession();
                var johnLogin = Alice.LoginModule.Login(session, "johnd", 123);
                var cmd = session.GetLastCommand();
                Assert.IsNotNull(johnLogin, "Login failed");
            }