|
1 | 1 | (ns puppetlabs.puppetdb.http.query-logging-test |
2 | 2 | (:require |
| 3 | + [clojure.java.io :as io] |
3 | 4 | [clojure.string :as str] |
4 | 5 | [clojure.test :refer :all] |
| 6 | + [clojure.walk :refer [keywordize-keys]] |
5 | 7 | [puppetlabs.kitchensink.core :as kitchensink] |
| 8 | + [puppetlabs.puppetdb.cheshire :as json] |
6 | 9 | [puppetlabs.puppetdb.cli.services :as svcs] |
| 10 | + [puppetlabs.puppetdb.testutils.catalogs :refer [replace-catalog]] |
7 | 11 | [puppetlabs.puppetdb.testutils.db :refer [with-test-db *db*]] |
8 | 12 | [puppetlabs.puppetdb.testutils.http |
9 | 13 | :refer [call-with-http-app query-response with-http-app*]] |
|
41 | 45 | (defn prep-logs [logs] |
42 | 46 | (->> @logs (map :message) keep-only-pdbquery-logs)) |
43 | 47 |
|
| 48 | +(def catalog-1 |
| 49 | + (-> "puppetlabs/puppetdb/cli/export/tiny-catalog.json" |
| 50 | + io/resource slurp json/parse-string keywordize-keys)) |
| 51 | + |
44 | 52 | (deftest queries-are-logged-when-log-queries-is-true |
45 | 53 | (tk-log/with-log-level "puppetlabs.puppetdb.query-eng" :debug |
46 | 54 | (with-test-db |
| 55 | + (replace-catalog catalog-1) |
47 | 56 | (with-http-app* #(assoc % :log-queries true) |
48 | 57 | (doseq [[query ast-exp sql-exp] |
| 58 | + ;; produce-streaming-body |
49 | 59 | [[["/v4" ["from" "nodes"]] |
50 | 60 | "\"from\" \"nodes\"" |
51 | 61 | "latest_report_noop_pending"] |
52 | 62 | [["/v4" ["from" "facts"]] |
53 | 63 | "\"from\" \"facts\"" |
54 | | - "(jsonb_each((stable||volatile)))"]]] |
| 64 | + "(jsonb_each((stable||volatile)))"] |
| 65 | + ;; stream-query-result |
| 66 | + [["/v4/catalogs/myhost.localdomain" []] |
| 67 | + "\"from\" \"catalogs\"" |
| 68 | + "row_to_json(edge_data)"]]] |
55 | 69 | (with-logged-event-maps events |
56 | 70 | (is (= 200 (:status (apply query-response :get query)))) |
57 | 71 |
|
|
0 commit comments