示例#1
0
        private async Task ReadWithMappingTest(int index)
        {
            var table = _hbaseHelper.GetTableName <Student>();

            var cancel = new CancellationToken();

            var studentsFromHb = (await _client.getRowAsync(
                                      table.ToBytes(),
                                      index.ToString().Reverse2String().ToBytes(),
                                      null,
                                      cancel))
                                 .Select(t => _HbaseParser.ToReal <Student>(t))
                                 .ToList();

            Assert.True(studentsFromHb.Count > 0);
            Assert.Equal(studentsFromHb.Last().Name, $"hsx{index}");
            Assert.Equal(studentsFromHb.Last().Age, index);
            Assert.True(studentsFromHb.Last().IsWork);
            Assert.Contains(studentsFromHb.Last().Hobbies, t => t == "running");
        }
示例#2
0
        public void ToRealTest()
        {
            var tRow = new TRowResult
            {
                Row     = 1.ToBytes(),
                Columns = new Dictionary <byte[], TCell>
                {
                    { $"{HbaseColumnAttribute.DefaultFamily}:{nameof(_student.Name)}".ToBytes(), new TCell {
                          Value = _student.Name.ToBytes()
                      } },
                    { $"{HbaseColumnAttribute.DefaultFamily}:{nameof(_student.Age)}".ToBytes(), new TCell {
                          Value = _student.Age.ToBytes()
                      } },
                    { $"{HbaseColumnAttribute.DefaultFamily}:{nameof(_student.IsWork)}".ToBytes(), new TCell {
                          Value = _student.IsWork.ToBytes()
                      } },
                }
            };
            var student = _HbaseParser.ToReal <Student>(tRow);

            Assert.Equal(_student.Age, student.Age);
            Assert.Equal(_student.Name, student.Name);
            Assert.Equal(_student.IsWork, student.IsWork);
        }