public void Dynamic_Mutation() { // arrange var col1 = "Test1"; var colValue1 = 300M; var col2 = "Test2"; var colValue2 = "Hello"; // act dynamic actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Test1 = colValue1; actual.Test2 = colValue2; // assert var mutations = ((IFluentRecord)actual).MutationTracker.GetMutations(); Assert.AreEqual(2, mutations.Count()); Assert.AreEqual(2, mutations.Count(x => x.Type == MutationType.Added)); var mut1 = mutations.FirstOrDefault(x => x.Column.ColumnName == col1); var mut2 = mutations.FirstOrDefault(x => x.Column.ColumnName == col2); Assert.IsNotNull(mut1); Assert.IsNotNull(mut2); Assert.AreSame(actual, mut1.Column.GetParent().ColumnFamily); Assert.AreSame(actual, mut2.Column.GetParent().ColumnFamily); }
public void Mutation() { // arrange var col1 = new FluentColumn<AsciiType> { ColumnName = "Test1", ColumnValue = 300M }; var col2 = new FluentColumn<AsciiType> { ColumnName = "Test2", ColumnValue = "Hello" }; // act var actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Columns.Add(col1); actual.Columns.Add(col2); // assert var mutations = actual.MutationTracker.GetMutations(); Assert.AreEqual(2, mutations.Count()); Assert.AreEqual(2, mutations.Count(x => x.Type == MutationType.Added)); var mut1 = mutations.FirstOrDefault(x => x.Column.ColumnName == "Test1"); var mut2 = mutations.FirstOrDefault(x => x.Column.ColumnName == "Test2"); Assert.AreSame(col1, mut1.Column); Assert.AreSame(col2, mut2.Column); Assert.AreSame(actual, mut1.Column.GetParent().ColumnFamily); Assert.AreSame(actual, mut2.Column.GetParent().ColumnFamily); }
public override IFluentColumnFamily <CompareWith> Execute(BaseCassandraColumnFamily columnFamily) { var result = new FluentColumnFamily <CompareWith>(Key, columnFamily.FamilyName, GetColumns(columnFamily)); columnFamily.Context.Attach(result); result.MutationTracker.Clear(); return(result); }
public void Path_Set() { // arrange // act var actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); // assert Assert.AreSame(actual, actual.GetPath().ColumnFamily); }
public void Path_Set() { // arrange // act var actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); // assert Assert.Same(actual, actual.GetPath().ColumnFamily); }
public void Implicity_Cast_To_Int64() { // arranage long? expected = null; dynamic family = new FluentColumnFamily <AsciiType>("Test1", "Test1"); // act long?actual = family.ShouldNotBeFound; // assert Assert.Equal(expected, actual); }
public void Implicity_Cast_To_Int64() { // arrange long? expected = null; dynamic family = new FluentColumnFamily<AsciiType>("Test1", "Test1"); // act long? actual = family.ShouldNotBeFound; // assert Assert.Equal(expected, actual); }
public void Constructor_Test() { // arrange var col1 = new FluentColumn<AsciiType> { ColumnName = "Test1", ColumnValue = 300M }; var col2 = new FluentColumn<AsciiType> { ColumnName = "Test2", ColumnValue = "Hello" }; // act var actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Columns.Add(col1); actual.Columns.Add(col2); // assert Assert.AreEqual(2, actual.Columns.Count); Assert.AreSame(col1.Family, actual); Assert.AreSame(col2.Family, actual); }
public void Get_NonExistent_Column() { // arrange var colValue1 = 300M; var colValue2 = "Hello"; var expected = (string)null; // act dynamic family = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); family.Test1 = colValue1; family.Test2 = colValue2; var actual = family.Test3; // assert Assert.Equal(expected, (string)actual); }
public void Get_NonExistent_Column() { // arrange var colValue1 = 300M; var colValue2 = "Hello"; string expected = null; // act dynamic family = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); family.Test1 = colValue1; family.Test2 = colValue2; var actual = family.Test3; // assert Assert.AreEqual(expected, actual); }
public void Constructor_Test() { // arrange var col1 = new FluentColumn<AsciiType> { ColumnName = "Test1", ColumnValue = 300M }; var col2 = new FluentColumn<AsciiType> { ColumnName = "Test2", ColumnValue = "Hello" }; // act var actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Columns.Add(col1); actual.Columns.Add(col2); // assert Assert.Equal(2, actual.Columns.Count); Assert.Same(col1.Family, actual); Assert.Same(col2.Family, actual); }
public void Constructor_Dynamic_Test() { // arrange var col1 = "Test1"; var colValue1 = 300M; var col2 = "Test2"; var colValue2 = "Hello"; // act dynamic actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Test1 = colValue1; actual.Test2 = colValue2; // assert Assert.Equal(colValue1, (decimal)actual.Test1); Assert.Equal(colValue1, (decimal)actual[col1]); Assert.Equal(colValue2, (string)actual.Test2); Assert.Equal(colValue2, (string)actual[col2]); }
public void Constructor_Dynamic_Test() { // arrange var col1 = "Test1"; var colValue1 = 300M; var col2 = "Test2"; var colValue2 = "Hello"; // act dynamic actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Test1 = colValue1; actual.Test2 = colValue2; // assert Assert.AreEqual(colValue1, (decimal)actual.Test1); Assert.AreEqual(colValue1, (decimal)actual[col1]); Assert.AreEqual(colValue2, (string)actual.Test2); Assert.AreEqual(colValue2, (string)actual[col2]); }
private IEnumerable <IFluentColumnFamily <CompareWith> > GetFamilies(BaseCassandraColumnFamily columnFamily) { CassandraSession _localSession = null; if (CassandraSession.Current == null) { _localSession = new CassandraSession(); } try { var parent = new ColumnParent { Column_family = columnFamily.FamilyName }; var output = CassandraSession.Current.GetClient().get_indexed_slices( parent, IndexClause.CreateIndexClause(), SlicePredicate.CreateSlicePredicate(), CassandraSession.Current.ReadConsistency ); foreach (var result in output) { var r = new FluentColumnFamily <CompareWith>(result.Key, columnFamily.FamilyName, result.Columns.Select(col => { return(Helper.ConvertColumnToFluentColumn <CompareWith>(col.Column)); })); columnFamily.Context.Attach(r); r.MutationTracker.Clear(); yield return(r); } } finally { if (_localSession != null) { _localSession.Dispose(); } } }
public override IEnumerable <IFluentColumnFamily <CompareWith> > Execute(BaseCassandraColumnFamily columnFamily) { CassandraSession _localSession = null; if (CassandraSession.Current == null) { _localSession = new CassandraSession(); } try { var parent = new ColumnParent { Column_family = columnFamily.FamilyName }; var output = CassandraSession.Current.GetClient().multiget_slice( Keys.ToByteArrayList(), parent, SlicePredicate.CreateSlicePredicate(), CassandraSession.Current.ReadConsistency ); foreach (var result in output) { var r = new FluentColumnFamily <CompareWith>(result.Key, columnFamily.FamilyName, result.Value.Select(col => { return(Helper.ConvertColumnToFluentColumn <CompareWith>(col.Column)); })); columnFamily.Context.Attach(r); r.MutationTracker.Clear(); yield return(r); } } finally { if (_localSession != null) { _localSession.Dispose(); } } }
public void Dynamic_Mutation_Removed() { // arrange var colValue1 = 300M; // act dynamic actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Test1 = colValue1; actual.RemoveColumn("Test1"); // assert var mutations = ((IFluentRecord)actual).MutationTracker.GetMutations().ToList(); Assert.Equal(2, mutations.Count()); Assert.Equal(MutationType.Added, mutations[0].Type); Assert.Equal(MutationType.Removed, mutations[1].Type); }
public void Dynamic_Mutation_Added() { // arrange var colValue1 = 300M; var colValue2 = "Hello"; // act dynamic actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Test1 = colValue1; actual.Test2 = colValue2; // assert var mutations = ((IFluentRecord)actual).MutationTracker.GetMutations(); Assert.Equal(2, mutations.Count()); Assert.Equal(2, mutations.Count(x => x.Type == MutationType.Added)); }
public void Mutation_Removed() { // arrange var col1 = new FluentColumn<AsciiType> { ColumnName = "Test1", ColumnValue = 300M }; // act var actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Columns.Add(col1); actual.RemoveColumn("Test1"); // assert var mutations = actual.MutationTracker.GetMutations().ToList(); Assert.Equal(2, mutations.Count()); Assert.Equal(MutationType.Added, mutations[0].Type); Assert.Equal(MutationType.Removed, mutations[1].Type); }
public void Mutation_Added() { // arrange var col1 = new FluentColumn<AsciiType> { ColumnName = "Test1", ColumnValue = 300M }; var col2 = new FluentColumn<AsciiType> { ColumnName = "Test2", ColumnValue = "Hello" }; // act var actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Columns.Add(col1); actual.Columns.Add(col2); // assert var mutations = actual.MutationTracker.GetMutations(); Assert.Equal(2, mutations.Count()); Assert.Equal(2, mutations.Count(x => x.Type == MutationType.Added)); }
public void Mutation() { // arrange var col1 = new FluentColumn<AsciiType> { ColumnName = "Test1", ColumnValue = 300M }; var col2 = new FluentColumn<AsciiType> { ColumnName = "Test2", ColumnValue = "Hello" }; // act var actual = new FluentColumnFamily<AsciiType>("Keyspace1", "Standard1"); actual.Columns.Add(col1); actual.Columns.Add(col2); // assert var mutations = actual.MutationTracker.GetMutations(); Assert.Equal(2, mutations.Count()); Assert.Equal(2, mutations.Count(x => x.Type == MutationType.Added)); var mut1 = mutations.FirstOrDefault(x => x.Column.ColumnName == "Test1"); var mut2 = mutations.FirstOrDefault(x => x.Column.ColumnName == "Test2"); Assert.Same(col1, mut1.Column); Assert.Same(col2, mut2.Column); Assert.Same(actual, mut1.Column.GetParent().ColumnFamily); Assert.Same(actual, mut2.Column.GetParent().ColumnFamily); }
public static FluentColumn <CompareWith> ConvertColumnToFluentColumn <CompareWith>(Column col, FluentColumnFamily <CompareWith> family = null) where CompareWith : CassandraType { return(new FluentColumn <CompareWith> { ColumnName = CassandraType.GetType <CompareWith>(col.Name), ColumnValue = col.Value, ColumnTimestamp = new DateTimeOffset(col.Timestamp, TimeSpan.Zero), ColumnTimeToLive = col.Ttl, Family = family }); }