public void ServerSideAliased()
        {
            int keyId = -1;
            CustomServerAliasedCollection coll = new CustomServerAliasedCollection();

            switch (coll.es.Connection.ProviderSignature.DataProviderName)
            {
                case "EntitySpaces.EffiProzProvider":
                    Assert.Ignore("Not implemented");
                    break;

                default:
                    using (esTransactionScope scope = new esTransactionScope())
                    {
                        // Setup
                        CustomServerAliased entity = new CustomServerAliased();

                        entity = new CustomServerAliased();
                        entity.FirstName = "Test";
                        entity.LastName = "One";

                        // Insert
                        entity.Save();
                        keyId = entity.AutoKey.Value;

                        Assert.AreEqual(entity.FirstName, "Test");
                        Assert.AreEqual(entity.LastName, "One");
                        Assert.AreEqual(entity.Age.Value, 30);
                        Assert.AreEqual(entity.DateAdded.Value.Day, DateTime.UtcNow.Day);
                        Assert.AreEqual(entity.DateModifiedAlias.Value.Day, DateTime.UtcNow.Day);
                        Assert.AreEqual(entity.AddedByAlias, "CustomUser");
                        Assert.AreEqual(entity.ModifiedBy, "CustomUser");
                        Assert.AreEqual(entity.EsVersion.Value, 1);

                        // Update
                        entity = new CustomServerAliased();
                        entity.LoadByPrimaryKey(keyId);

                        Assert.AreEqual(entity.FirstName, "Test");
                        Assert.AreEqual(entity.LastName, "One");
                        Assert.AreEqual(entity.Age.Value, 30);
                        Assert.AreEqual(entity.DateAdded.Value.Day, DateTime.UtcNow.Day);
                        Assert.AreEqual(entity.DateModifiedAlias.Value.Day, DateTime.UtcNow.Day);
                        Assert.AreEqual(entity.AddedByAlias, "CustomUser");
                        Assert.AreEqual(entity.ModifiedBy, "CustomUser");
                        Assert.AreEqual(entity.EsVersion.Value, 1);

                        DateTime modified = entity.DateModifiedAlias.Value;
                        entity.LastName = "Two";
                        System.Threading.Thread.Sleep(4);
                        entity.Save();

                        Assert.AreEqual(entity.FirstName, "Test");
                        Assert.AreEqual(entity.LastName, "Two");
                        Assert.AreEqual(entity.Age.Value, 30);
                        Assert.AreEqual(entity.DateAdded.Value.Day, DateTime.UtcNow.Day);
                        Assert.AreEqual(entity.DateModifiedAlias.Value.Day, DateTime.UtcNow.Day);
                        Assert.Greater(entity.DateModifiedAlias.Value, modified);
                        Assert.AreEqual(entity.AddedByAlias, "CustomUser");
                        Assert.AreEqual(entity.ModifiedBy, "CustomUser");
                        Assert.AreEqual(entity.EsVersion.Value, 2);

                        // No Update
                        entity = new CustomServerAliased();
                        entity.LoadByPrimaryKey(keyId);
                        DateTime added = entity.DateAdded.Value;
                        modified = entity.DateModifiedAlias.Value;

                        entity.Save();

                        Assert.AreEqual(entity.FirstName, "Test");
                        Assert.AreEqual(entity.LastName, "Two");
                        Assert.AreEqual(entity.Age.Value, 30);
                        Assert.AreEqual(entity.DateAdded.Value, added);
                        Assert.AreEqual(entity.DateModifiedAlias.Value, modified);
                        Assert.AreEqual(entity.AddedByAlias, "CustomUser");
                        Assert.AreEqual(entity.ModifiedBy, "CustomUser");
                        Assert.AreEqual(entity.EsVersion.Value, 2);

                        // Clean up
                        entity = new CustomServerAliased();
                        entity.LoadByPrimaryKey(keyId);

                        Assert.AreEqual(entity.FirstName, "Test");
                        Assert.AreEqual(entity.LastName, "Two");
                        Assert.AreEqual(entity.Age.Value, 30);
                        Assert.AreEqual(entity.DateAdded.Value, added);
                        Assert.AreEqual(entity.DateModifiedAlias.Value, modified);
                        Assert.AreEqual(entity.AddedByAlias, "CustomUser");
                        Assert.AreEqual(entity.ModifiedBy, "CustomUser");
                        Assert.AreEqual(entity.EsVersion.Value, 2);

                        entity.MarkAsDeleted();
                        entity.Save();

                        entity = new CustomServerAliased();
                        if (entity.LoadByPrimaryKey(keyId))
                        {
                            Assert.Fail("Not deleted");
                        }
                    }
                    break;
            }
        }
Exemplo n.º 2
0
        public void ServerSideAliased()
        {
            int keyId = -1;
            CustomServerAliasedCollection coll = new CustomServerAliasedCollection();

            switch (coll.es.Connection.ProviderSignature.DataProviderName)
            {
            case "EntitySpaces.EffiProzProvider":
                Assert.Ignore("Not implemented");
                break;

            default:
                using (esTransactionScope scope = new esTransactionScope())
                {
                    // Setup
                    CustomServerAliased entity = new CustomServerAliased();

                    entity           = new CustomServerAliased();
                    entity.FirstName = "Test";
                    entity.LastName  = "One";

                    // Insert
                    entity.Save();
                    keyId = entity.AutoKey.Value;

                    Assert.AreEqual(entity.FirstName, "Test");
                    Assert.AreEqual(entity.LastName, "One");
                    Assert.AreEqual(entity.Age.Value, 30);
                    Assert.AreEqual(entity.DateAdded.Value.Day, DateTime.UtcNow.Day);
                    Assert.AreEqual(entity.DateModifiedAlias.Value.Day, DateTime.UtcNow.Day);
                    Assert.AreEqual(entity.AddedByAlias, "CustomUser");
                    Assert.AreEqual(entity.ModifiedBy, "CustomUser");
                    Assert.AreEqual(entity.EsVersion.Value, 1);

                    // Update
                    entity = new CustomServerAliased();
                    entity.LoadByPrimaryKey(keyId);

                    Assert.AreEqual(entity.FirstName, "Test");
                    Assert.AreEqual(entity.LastName, "One");
                    Assert.AreEqual(entity.Age.Value, 30);
                    Assert.AreEqual(entity.DateAdded.Value.Day, DateTime.UtcNow.Day);
                    Assert.AreEqual(entity.DateModifiedAlias.Value.Day, DateTime.UtcNow.Day);
                    Assert.AreEqual(entity.AddedByAlias, "CustomUser");
                    Assert.AreEqual(entity.ModifiedBy, "CustomUser");
                    Assert.AreEqual(entity.EsVersion.Value, 1);

                    DateTime modified = entity.DateModifiedAlias.Value;
                    entity.LastName = "Two";
                    System.Threading.Thread.Sleep(4);
                    entity.Save();

                    Assert.AreEqual(entity.FirstName, "Test");
                    Assert.AreEqual(entity.LastName, "Two");
                    Assert.AreEqual(entity.Age.Value, 30);
                    Assert.AreEqual(entity.DateAdded.Value.Day, DateTime.UtcNow.Day);
                    Assert.AreEqual(entity.DateModifiedAlias.Value.Day, DateTime.UtcNow.Day);
                    Assert.Greater(entity.DateModifiedAlias.Value, modified);
                    Assert.AreEqual(entity.AddedByAlias, "CustomUser");
                    Assert.AreEqual(entity.ModifiedBy, "CustomUser");
                    Assert.AreEqual(entity.EsVersion.Value, 2);

                    // No Update
                    entity = new CustomServerAliased();
                    entity.LoadByPrimaryKey(keyId);
                    DateTime added = entity.DateAdded.Value;
                    modified = entity.DateModifiedAlias.Value;

                    entity.Save();

                    Assert.AreEqual(entity.FirstName, "Test");
                    Assert.AreEqual(entity.LastName, "Two");
                    Assert.AreEqual(entity.Age.Value, 30);
                    Assert.AreEqual(entity.DateAdded.Value, added);
                    Assert.AreEqual(entity.DateModifiedAlias.Value, modified);
                    Assert.AreEqual(entity.AddedByAlias, "CustomUser");
                    Assert.AreEqual(entity.ModifiedBy, "CustomUser");
                    Assert.AreEqual(entity.EsVersion.Value, 2);

                    // Clean up
                    entity = new CustomServerAliased();
                    entity.LoadByPrimaryKey(keyId);

                    Assert.AreEqual(entity.FirstName, "Test");
                    Assert.AreEqual(entity.LastName, "Two");
                    Assert.AreEqual(entity.Age.Value, 30);
                    Assert.AreEqual(entity.DateAdded.Value, added);
                    Assert.AreEqual(entity.DateModifiedAlias.Value, modified);
                    Assert.AreEqual(entity.AddedByAlias, "CustomUser");
                    Assert.AreEqual(entity.ModifiedBy, "CustomUser");
                    Assert.AreEqual(entity.EsVersion.Value, 2);

                    entity.MarkAsDeleted();
                    entity.Save();

                    entity = new CustomServerAliased();
                    if (entity.LoadByPrimaryKey(keyId))
                    {
                        Assert.Fail("Not deleted");
                    }
                }
                break;
            }
        }