public void It_writes_to_shadow_state_properties() { var entityType = CreateModel().GetEntityType("ShadowEntity"); var entry = _factory.Create(entityType, new AtsObjectArrayValueReader(new object[4])); var adapter = new StateEntryTableEntityAdapter <object>(entry); var pkProp = entry.EntityType.GetPropertyByColumnName("PartitionKey"); var rkProp = entry.EntityType.GetPropertyByColumnName("RowKey"); var tmProp = entry.EntityType.GetPropertyByColumnName("Timestamp"); var someProp = entry.EntityType.GetPropertyByColumnName("SomeProperty"); adapter.PartitionKey = "PK"; adapter.RowKey = "RK"; var timestamp = DateTimeOffset.UtcNow; adapter.Timestamp = timestamp; adapter.ReadEntity(new Dictionary <string, EntityProperty> { { "SomeProperty", new EntityProperty(324890) } }, null); Assert.Equal("PK", entry[pkProp]); Assert.Equal("RK", entry[rkProp]); Assert.Equal(timestamp, entry[tmProp]); Assert.Equal(324890, entry[someProp]); }
public void It_wraps_poco_in_adapter() { var obj = new ClrPoco(); var entityType = CreateModel().GetEntityType(typeof(ClrPoco)); var entry = _factory.Create(entityType, obj); var adapter = new StateEntryTableEntityAdapter<ClrPoco>(entry); Assert.Same(obj, adapter.Entity); }
public void It_wraps_poco_in_adapter() { var obj = new ClrPoco(); var entityType = CreateModel().GetEntityType(typeof(ClrPoco)); var entry = _factory.Create(entityType, obj); var adapter = new StateEntryTableEntityAdapter <ClrPoco>(entry); Assert.Same(obj, adapter.Entity); }
public void It_interprets_guid_keys() { var data = new object[] { "80d401da-ef77-4bc6-a2b0-300025098a0e", "4b240e4f-b886-4d23-a63c-017a3d79885a", "timestamp" }; var entityType = CreateModel().GetEntityType(typeof(GuidKeysPoco)); var entry = _factory.Create(entityType, new AtsObjectArrayValueReader(data)); var adapter = new StateEntryTableEntityAdapter <GuidKeysPoco>(entry); Assert.Equal(new Guid("80d401da-ef77-4bc6-a2b0-300025098a0e"), adapter.Entity.PartitionGuid); Assert.Equal(new Guid("4b240e4f-b886-4d23-a63c-017a3d79885a"), adapter.Entity.RowGuid); }
public void It_casts_from_int_keys() { var obj = new IntKeysPoco { PartitionID = 42, RowID = 1980 }; var entityType = CreateModel().GetEntityType(typeof(IntKeysPoco)); var entry = _factory.Create(entityType, obj); var adapter = new StateEntryTableEntityAdapter <IntKeysPoco>(entry); Assert.Equal("42", adapter.PartitionKey); Assert.Equal("1980", adapter.RowKey); }
public void It_casts_to_int_keys() { var data = new object[] { "42", "1980", "11/11/2011 11:11:11 PM" }; var entityType = CreateModel().GetEntityType(typeof(IntKeysPoco)); var entry = _factory.Create(entityType, new AtsObjectArrayValueReader(data)); var adapter = new StateEntryTableEntityAdapter <IntKeysPoco>(entry); var entity = adapter.Entity; Assert.Equal(42, entity.PartitionID); Assert.Equal(1980, entity.RowID); }
public void It_writes_to_clr_properties() { var obj = new ClrPoco(); var entityType = CreateModel().GetEntityType(typeof(ClrPoco)); var entry = _factory.Create(entityType, obj); var adapter = new StateEntryTableEntityAdapter<ClrPoco>(entry); adapter.PartitionKey = "PartitionKey"; adapter.RowKey = "RowKey"; var timestamp = DateTime.Now; adapter.Timestamp = timestamp; Assert.Equal("PartitionKey", obj.PartitionKey); Assert.Equal("RowKey", obj.RowKey); Assert.Equal(timestamp, obj.Timestamp); }
public void It_writes_to_clr_properties() { var obj = new ClrPoco(); var entityType = CreateModel().GetEntityType(typeof(ClrPoco)); var entry = _factory.Create(entityType, obj); var adapter = new StateEntryTableEntityAdapter <ClrPoco>(entry); adapter.PartitionKey = "PartitionKey"; adapter.RowKey = "RowKey"; var timestamp = DateTime.Now; adapter.Timestamp = timestamp; Assert.Equal("PartitionKey", obj.PartitionKey); Assert.Equal("RowKey", obj.RowKey); Assert.Equal(timestamp, obj.Timestamp); }
public void It_reads_from_dictionary() { var data = new Dictionary <string, EntityProperty> { { "StringProp", new EntityProperty("StringVal") }, { "IntProp", new EntityProperty(5) }, }; var instance = new ClrPocoWithProp(); var entityType = CreateModel().GetEntityType(typeof(ClrPocoWithProp)); var entry = _factory.Create(entityType, instance); var adapter = new StateEntryTableEntityAdapter <ClrPocoWithProp>(entry); adapter.ReadEntity(data, null); Assert.Equal("StringVal", instance.StringProp); Assert.Equal(5, instance.IntProp); }
public void It_skips_mismatched_types() { var data = new Dictionary <string, EntityProperty> { { "StringProp", new EntityProperty(5) }, { "IntProp", new EntityProperty("string input") }, }; var instance = new ClrPocoWithProp(); var entityType = CreateModel().GetEntityType(typeof(ClrPocoWithProp)); var entry = _factory.Create(entityType, instance); var adapter = new StateEntryTableEntityAdapter <ClrPocoWithProp>(entry); adapter.ReadEntity(data, null); Assert.Equal(default(string), instance.StringProp); Assert.Equal(default(int), instance.IntProp); }
public void It_writes_to_dictionary() { var instance = new ClrPocoWithProp { PartitionKey = "A", RowKey = "B", StringProp = "C", IntProp = 5, Timestamp = DateTimeOffset.UtcNow, }; var entry = _factory.Create(CreateModel().GetEntityType(typeof(ClrPocoWithProp)), instance); var adapter = new StateEntryTableEntityAdapter <ClrPocoWithProp>(entry); var expected = new Dictionary <string, EntityProperty> { { "IntProp", new EntityProperty(instance.IntProp) }, { "StringProp", new EntityProperty(instance.StringProp) }, }; Assert.Equal(expected, adapter.WriteEntity(null)); }
public void It_reads_from_shadow_state_properties() { var entityType = CreateModel().GetEntityType("ShadowEntity"); var entry = _factory.Create(entityType, new AtsObjectArrayValueReader(new object[4])); var adapter = new StateEntryTableEntityAdapter <object>(entry); var pkProp = entry.EntityType.GetPropertyByColumnName("PartitionKey"); var rkProp = entry.EntityType.GetPropertyByColumnName("RowKey"); var tmProp = entry.EntityType.GetPropertyByColumnName("Timestamp"); var someProp = entry.EntityType.GetPropertyByColumnName("SomeProperty"); entry[pkProp] = "PK"; entry[rkProp] = "RK"; var timestamp = DateTimeOffset.UtcNow; entry[tmProp] = timestamp; entry[someProp] = 65134; var values = adapter.WriteEntity(null); Assert.Equal("PK", adapter.PartitionKey); Assert.Equal("RK", adapter.RowKey); Assert.Equal(timestamp, adapter.Timestamp); Assert.Equal(65134, values["SomeProperty"].Int32Value); }
public void It_reads_from_shadow_state_properties() { var entityType = CreateModel().GetEntityType("ShadowEntity"); var entry = _factory.Create(entityType, new AtsObjectArrayValueReader(new object[4])); var adapter = new StateEntryTableEntityAdapter<object>(entry); var pkProp = entry.EntityType.GetPropertyByColumnName("PartitionKey"); var rkProp = entry.EntityType.GetPropertyByColumnName("RowKey"); var tmProp = entry.EntityType.GetPropertyByColumnName("Timestamp"); var someProp = entry.EntityType.GetPropertyByColumnName("SomeProperty"); entry[pkProp] = "PK"; entry[rkProp] = "RK"; var timestamp = DateTimeOffset.UtcNow; entry[tmProp] = timestamp; entry[someProp] = 65134; var values = adapter.WriteEntity(null); Assert.Equal("PK", adapter.PartitionKey); Assert.Equal("RK", adapter.RowKey); Assert.Equal(timestamp, adapter.Timestamp); Assert.Equal(65134, values["SomeProperty"].Int32Value); }
public void It_interprets_guid_keys() { var data = new object[] { "80d401da-ef77-4bc6-a2b0-300025098a0e", "4b240e4f-b886-4d23-a63c-017a3d79885a", "timestamp" }; var entityType = CreateModel().GetEntityType(typeof(GuidKeysPoco)); var entry = _factory.Create(entityType, new AtsObjectArrayValueReader(data)); var adapter = new StateEntryTableEntityAdapter<GuidKeysPoco>(entry); Assert.Equal(new Guid("80d401da-ef77-4bc6-a2b0-300025098a0e"), adapter.Entity.PartitionGuid); Assert.Equal(new Guid("4b240e4f-b886-4d23-a63c-017a3d79885a"), adapter.Entity.RowGuid); }
public void It_casts_from_int_keys() { var obj = new IntKeysPoco { PartitionID = 42, RowID = 1980 }; var entityType = CreateModel().GetEntityType(typeof(IntKeysPoco)); var entry = _factory.Create(entityType, obj); var adapter = new StateEntryTableEntityAdapter<IntKeysPoco>(entry); Assert.Equal("42", adapter.PartitionKey); Assert.Equal("1980", adapter.RowKey); }
public void It_reads_from_dictionary() { var data = new Dictionary<string, EntityProperty> { { "StringProp", new EntityProperty("StringVal") }, { "IntProp", new EntityProperty(5) }, }; var instance = new ClrPocoWithProp(); var entityType = CreateModel().GetEntityType(typeof(ClrPocoWithProp)); var entry = _factory.Create(entityType, instance); var adapter = new StateEntryTableEntityAdapter<ClrPocoWithProp>(entry); adapter.ReadEntity(data, null); Assert.Equal("StringVal", instance.StringProp); Assert.Equal(5, instance.IntProp); }
public void It_skips_mismatched_types() { var data = new Dictionary<string, EntityProperty> { { "StringProp", new EntityProperty(5) }, { "IntProp", new EntityProperty("string input") }, }; var instance = new ClrPocoWithProp(); var entityType = CreateModel().GetEntityType(typeof(ClrPocoWithProp)); var entry = _factory.Create(entityType, instance); var adapter = new StateEntryTableEntityAdapter<ClrPocoWithProp>(entry); adapter.ReadEntity(data, null); Assert.Equal(default(string), instance.StringProp); Assert.Equal(default(int), instance.IntProp); }
public void It_writes_to_dictionary() { var instance = new ClrPocoWithProp { PartitionKey = "A", RowKey = "B", StringProp = "C", IntProp = 5, Timestamp = DateTimeOffset.UtcNow, }; var entry = _factory.Create(CreateModel().GetEntityType(typeof(ClrPocoWithProp)), instance); var adapter = new StateEntryTableEntityAdapter<ClrPocoWithProp>(entry); var expected = new Dictionary<string, EntityProperty> { { "IntProp", new EntityProperty(instance.IntProp) }, { "StringProp", new EntityProperty(instance.StringProp) }, }; Assert.Equal(expected, adapter.WriteEntity(null)); }
public void It_writes_to_shadow_state_properties() { var entityType = CreateModel().GetEntityType("ShadowEntity"); var entry = _factory.Create(entityType, new AtsObjectArrayValueReader(new object[4])); var adapter = new StateEntryTableEntityAdapter<object>(entry); var pkProp = entry.EntityType.GetPropertyByColumnName("PartitionKey"); var rkProp = entry.EntityType.GetPropertyByColumnName("RowKey"); var tmProp = entry.EntityType.GetPropertyByColumnName("Timestamp"); var someProp = entry.EntityType.GetPropertyByColumnName("SomeProperty"); adapter.PartitionKey = "PK"; adapter.RowKey = "RK"; var timestamp = DateTimeOffset.UtcNow; adapter.Timestamp = timestamp; adapter.ReadEntity(new Dictionary<string, EntityProperty> { { "SomeProperty", new EntityProperty(324890) } }, null); Assert.Equal("PK", entry[pkProp]); Assert.Equal("RK", entry[rkProp]); Assert.Equal(timestamp, entry[tmProp]); Assert.Equal(324890, entry[someProp]); }
public void It_casts_to_int_keys() { var data = new object[] { "42", "1980", "11/11/2011 11:11:11 PM" }; var entityType = CreateModel().GetEntityType(typeof(IntKeysPoco)); var entry = _factory.Create(entityType, new AtsObjectArrayValueReader(data)); var adapter = new StateEntryTableEntityAdapter<IntKeysPoco>(entry); var entity = adapter.Entity; Assert.Equal(42, entity.PartitionID); Assert.Equal(1980, entity.RowID); }