示例#1
0
        public void GetHeaderValuesAssignsMetadataAndPaginationAsNull_WhenNoMetaDataPassedIn()
        {
            //Arrange
            methods.Clear();
            ids.Clear();
            var pagination = new PaginationMetadata()
            {
                PageNumber   = 2,
                PageSize     = 2,
                TotalRecords = 10
            };

            var linksHeaderWithoutMetadata = new LinksHeader(null, null, urlHelperMock.Object, "EventsController", null,
                                                             null);
            var linksHeaderWithMetadata = new LinksHeader(null, pagination, urlHelperMock.Object, "EventsController", null,
                                                          null);

            //Act
            var linksWithoutMetadata = linksHeaderWithoutMetadata.GetHeaderValues();
            var linksWithMetadata    = linksHeaderWithMetadata.GetHeaderValues();

            //Assert
            Assert.IsNull(linksWithoutMetadata.Metadata);
            Assert.IsNull(linksWithoutMetadata.Links.Pagination);

            Assert.IsNotNull(linksWithMetadata.Metadata);
            Assert.IsNotNull(linksWithMetadata.Links.Pagination);
            urlHelperMock.Verify(foo => foo.Link("EventsController", It.IsAny <object>()), Times.Exactly(2));

            Assert.AreEqual(GetProperty(ids[0], "id"), "");
            Assert.AreEqual(GetProperty(ids[1], "id"), "");
        }
 protected override void ResetPointers()
 {
     base.ResetPointers();
     _linksDataParts  = null;
     _linksIndexParts = null;
     _header          = null;
 }
 protected UInt32InternalLinksRecursionlessSizeBalancedTreeMethodsBase(LinksConstants <TLink> constants, RawLinkDataPart <TLink> *linksDataParts, RawLinkIndexPart <TLink> *linksIndexParts, LinksHeader <TLink> *header)
     : base(constants, (byte *)linksDataParts, (byte *)linksIndexParts, (byte *)header)
 {
     LinksDataParts  = linksDataParts;
     LinksIndexParts = linksIndexParts;
     Header          = header;
 }
 protected override void SetPointers(IResizableDirectMemory memory)
 {
     _header                = (LinksHeader <ulong> *)memory.Pointer;
     _links                 = (RawLink <ulong> *)memory.Pointer;
     SourcesTreeMethods     = _createSourceTreeMethods();
     TargetsTreeMethods     = _createTargetTreeMethods();
     UnusedLinksListMethods = new UInt64UnusedLinksListMethods(_links, _header);
 }
 protected override void SetPointers(IResizableDirectMemory dataMemory, IResizableDirectMemory indexMemory)
 {
     _linksDataParts  = (RawLinkDataPart <TLink> *)dataMemory.Pointer;
     _linksIndexParts = (RawLinkIndexPart <TLink> *)indexMemory.Pointer;
     _header          = (LinksHeader <TLink> *)indexMemory.Pointer;
     if (_useLinkedList)
     {
         InternalSourcesListMethods = new UInt32InternalLinksSourcesLinkedListMethods(Constants, _linksDataParts, _linksIndexParts);
     }
     else
     {
         InternalSourcesTreeMethods = _createInternalSourceTreeMethods();
     }
     ExternalSourcesTreeMethods = _createExternalSourceTreeMethods();
     InternalTargetsTreeMethods = _createInternalTargetTreeMethods();
     ExternalTargetsTreeMethods = _createExternalTargetTreeMethods();
     UnusedLinksListMethods     = new UInt32UnusedLinksListMethods(_linksDataParts, _header);
 }
 public LinksTargetsTreeMethods(Links links, LinksHeader* header)
 {
     _db = links;
     _links = links._links;
     _header = header;
 }
示例#7
0
 protected UInt64LinksAvlBalancedTreeMethodsBase(LinksConstants <ulong> constants, RawLink <ulong> *links, LinksHeader <ulong> *header)
     : base(constants, (byte *)links, (byte *)header)
 {
     Links  = links;
     Header = header;
 }
示例#8
0
 protected UInt32LinksRecursionlessSizeBalancedTreeMethodsBase(LinksConstants <uint> constants, RawLink <uint> *links, LinksHeader <uint> *header)
     : base(constants, (byte *)links, (byte *)header)
 {
     Links  = links;
     Header = header;
 }
 public UInt64InternalLinksSourcesRecursionlessSizeBalancedTreeMethods(LinksConstants <TLink> constants, RawLinkDataPart <TLink> *linksDataParts, RawLinkIndexPart <TLink> *linksIndexParts, LinksHeader <TLink> *header) : base(constants, linksDataParts, linksIndexParts, header)
 {
 }
示例#10
0
 public UInt32LinksSourcesRecursionlessSizeBalancedTreeMethods(LinksConstants <uint> constants, RawLink <uint> *links, LinksHeader <uint> *header) : base(constants, links, header)
 {
 }
示例#11
0
 public UInt32LinksTargetsSizeBalancedTreeMethods(LinksConstants <uint> constants, RawLink <uint> *links, LinksHeader <uint> *header) : base(constants, links, header)
 {
 }
 public UInt64UnusedLinksListMethods(RawLinkDataPart <ulong> *links, LinksHeader <ulong> *header)
     : base((byte *)links, (byte *)header)
 {
     _links  = links;
     _header = header;
 }
 public UInt32UnusedLinksListMethods(RawLink <uint> *links, LinksHeader <uint> *header)
     : base((byte *)links, (byte *)header)
 {
     _links  = links;
     _header = header;
 }
 protected override void ResetPointers()
 {
     base.ResetPointers();
     _links  = null;
     _header = null;
 }
 public LinksSourcesTreeMethods(Links links, LinksHeader* header)
 {
     _db = links;
     _links = links._links;
     _header = header;
 }
 public UInt32InternalLinksTargetsSizeBalancedTreeMethods(LinksConstants <TLink> constants, RawLinkDataPart <TLink> *linksDataParts, RawLinkIndexPart <TLink> *linksIndexParts, LinksHeader <TLink> *header) : base(constants, linksDataParts, linksIndexParts, header)
 {
 }
示例#17
0
 public static void AddLinksHeader(this IHeaderDictionary headers, LinksHeader header)
 {
     headers.Add("Access-Control-Expose-Headers", LinksHeader.HeaderName);
     headers.Add(LinksHeader.HeaderName, header.HeaderJson);
 }
示例#18
0
 public UInt64LinksSourcesSizeBalancedTreeMethods(LinksConstants <ulong> constants, RawLink <ulong> *links, LinksHeader <ulong> *header) : base(constants, links, header)
 {
 }
示例#19
0
 public UInt64LinksTargetsAvlBalancedTreeMethods(LinksConstants <ulong> constants, RawLink <ulong> *links, LinksHeader <ulong> *header) : base(constants, links, header)
 {
 }