public void ListTemplateRecordsSorted(long accountId, string template,
                                              string expectedUrl)
        {
            var client  = new MockDnsimpleClient(ListTemplateRecordsFixture);
            var options = new ListTemplateRecordsOptions
            {
                Pagination = new Pagination
                {
                    PerPage = 42,
                    Page    = 7
                }
            }.SortById(Order.asc).SortByName(Order.desc)
            .SortByContent(Order.asc).SortByType(Order.desc);

            client.Templates.ListTemplateRecords(accountId, template, options);

            Assert.AreEqual(expectedUrl, client.RequestSentTo());
        }
        /// <summary>
        /// Lists the records for a template.
        /// </summary>
        /// <param name="accountId">The account ID</param>
        /// <param name="template">The template id or short name (sid)</param>
        /// <param name="options">Options passed to the list (sorting and
        /// pagination).</param>
        /// <returns>The list of template records</returns>
        /// <see>https://developer.dnsimple.com/v2/templates/records/#listTemplateRecords</see>
        public PaginatedResponse <TemplateRecord> ListTemplateRecords(long accountId, string template, ListTemplateRecordsOptions options = null)
        {
            var builder = BuildRequestForPath(TemplateRecordsPath(accountId, template));

            AddListOptionsToRequest(options, ref builder);

            return(new PaginatedResponse <TemplateRecord>(Execute(builder.Request)));
        }