public void GetFiltersWithOptions_ReturnsExpectedResults()
        {
            var filter = new BasicTestEntityFilter
            {
                Ids  = new[] { 1, 2, 3 },
                Name = "Test"
            };

            var options = new RequestOptions()
            {
                IncludeSupplementalData = false,
                Page    = 7,
                PerPage = 23
            };

            Dictionary <string, string> filterPairs = filter.GetFiltersWithOptions(options);

            const int expectedFilterPairCount = 5;

            Assert.AreEqual(expectedFilterPairCount, filterPairs.Count, $"Expected {expectedFilterPairCount} filter pairs.");

            Assert.AreEqual("1,2,3", filterPairs["ids"]);
            Assert.AreEqual("Test", filterPairs["name"]);
            Assert.AreEqual("no", filterPairs["supplemental_data"]);
            Assert.AreEqual("7", filterPairs["page"]);
            Assert.AreEqual("23", filterPairs["per_page"]);
        }
        public void GetFiltersWithOptions_ThrowsWhenOptionsIsNull()
        {
            var filter = new BasicTestEntityFilter();

            Assert.ThrowsException <ArgumentNullException>(() => filter.GetFiltersWithOptions(null));
        }