carddb 0.4.5 → 0.4.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rspec_status +149 -137
- data/lib/carddb/client.rb +7 -0
- data/lib/carddb/collection.rb +111 -0
- data/lib/carddb/query_builder.rb +300 -0
- data/lib/carddb/resources/rulesets.rb +180 -0
- data/lib/carddb/version.rb +1 -1
- data/lib/carddb.rb +8 -0
- metadata +2 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f029ccc69d199c05a4acb44a2c1f040e49c7d64e877b0b78adfe61d901c40bbf
|
|
4
|
+
data.tar.gz: cac9ba5a750b2d030a6132c25c51dc00d440437763810692f01158c637dffafb
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 40b2647b7f48c0fad81799e2e7bcfa802e31c445a60483e31bb04a1846b093567ee6f7eadaaed2bd030345822ad38bd67d6c927fe3cc1a3a8dfe6aa04e39c856
|
|
7
|
+
data.tar.gz: dd83ff1b5e28951ac8c0cda5a3da65cf5ee0d5555bc84cf03c24863385daba1b5843fd9b6eb94c0f47edaed9c585613e89d8e1955c4e82f10d9edb49f88890d8
|
data/.rspec_status
CHANGED
|
@@ -1,193 +1,205 @@
|
|
|
1
1
|
example_id | status | run_time |
|
|
2
2
|
---------------------------------------------------------- | ------ | --------------- |
|
|
3
|
-
./spec/carddb/batch_spec.rb[1:1] | passed | 0.
|
|
4
|
-
./spec/carddb/client_spec.rb[1:1:1] | passed | 0.
|
|
5
|
-
./spec/carddb/client_spec.rb[1:1:2] | passed | 0.
|
|
3
|
+
./spec/carddb/batch_spec.rb[1:1] | passed | 0.00818 seconds |
|
|
4
|
+
./spec/carddb/client_spec.rb[1:1:1] | passed | 0.00004 seconds |
|
|
5
|
+
./spec/carddb/client_spec.rb[1:1:2] | passed | 0.00003 seconds |
|
|
6
6
|
./spec/carddb/client_spec.rb[1:1:3] | passed | 0.00004 seconds |
|
|
7
7
|
./spec/carddb/client_spec.rb[1:1:4] | passed | 0.00003 seconds |
|
|
8
|
-
./spec/carddb/client_spec.rb[1:2:1] | passed | 0.
|
|
9
|
-
./spec/carddb/client_spec.rb[1:2:2] | passed | 0.
|
|
8
|
+
./spec/carddb/client_spec.rb[1:2:1] | passed | 0.00014 seconds |
|
|
9
|
+
./spec/carddb/client_spec.rb[1:2:2] | passed | 0.00016 seconds |
|
|
10
10
|
./spec/carddb/client_spec.rb[1:3:1] | passed | 0.00004 seconds |
|
|
11
|
-
./spec/carddb/client_spec.rb[1:4:1] | passed | 0.
|
|
12
|
-
./spec/carddb/client_spec.rb[1:5:1] | passed | 0.
|
|
13
|
-
./spec/carddb/client_spec.rb[1:6:1] | passed | 0.
|
|
11
|
+
./spec/carddb/client_spec.rb[1:4:1] | passed | 0.00003 seconds |
|
|
12
|
+
./spec/carddb/client_spec.rb[1:5:1] | passed | 0.00003 seconds |
|
|
13
|
+
./spec/carddb/client_spec.rb[1:6:1] | passed | 0.00003 seconds |
|
|
14
14
|
./spec/carddb/client_spec.rb[1:7:1] | passed | 0.00003 seconds |
|
|
15
15
|
./spec/carddb/client_spec.rb[1:8:1] | passed | 0.00003 seconds |
|
|
16
|
-
./spec/carddb/client_spec.rb[1:9:1] | passed | 0.
|
|
16
|
+
./spec/carddb/client_spec.rb[1:9:1] | passed | 0.00003 seconds |
|
|
17
17
|
./spec/carddb/client_spec.rb[1:10:1] | passed | 0.00003 seconds |
|
|
18
|
-
./spec/carddb/client_spec.rb[1:11:1] | passed | 0.
|
|
18
|
+
./spec/carddb/client_spec.rb[1:11:1] | passed | 0.00003 seconds |
|
|
19
19
|
./spec/carddb/client_spec.rb[1:12:1] | passed | 0.00003 seconds |
|
|
20
|
-
./spec/carddb/client_spec.rb[1:13:1] | passed | 0.
|
|
21
|
-
./spec/carddb/client_spec.rb[1:
|
|
22
|
-
./spec/carddb/
|
|
23
|
-
./spec/carddb/collection_spec.rb[
|
|
24
|
-
./spec/carddb/collection_spec.rb[
|
|
25
|
-
./spec/carddb/collection_spec.rb[3:1:
|
|
26
|
-
./spec/carddb/collection_spec.rb[3:1:
|
|
27
|
-
./spec/carddb/collection_spec.rb[3:1:
|
|
20
|
+
./spec/carddb/client_spec.rb[1:13:1] | passed | 0.00003 seconds |
|
|
21
|
+
./spec/carddb/client_spec.rb[1:14:1] | passed | 0.00029 seconds |
|
|
22
|
+
./spec/carddb/client_spec.rb[1:14:2] | passed | 0.0037 seconds |
|
|
23
|
+
./spec/carddb/collection_spec.rb[1:1:1] | passed | 0.00004 seconds |
|
|
24
|
+
./spec/carddb/collection_spec.rb[2:1:1] | passed | 0.00003 seconds |
|
|
25
|
+
./spec/carddb/collection_spec.rb[3:1:1] | passed | 0.0017 seconds |
|
|
26
|
+
./spec/carddb/collection_spec.rb[3:1:2] | passed | 0.00013 seconds |
|
|
27
|
+
./spec/carddb/collection_spec.rb[3:1:3] | passed | 0.00035 seconds |
|
|
28
|
+
./spec/carddb/collection_spec.rb[3:1:4] | passed | 0.0003 seconds |
|
|
28
29
|
./spec/carddb/collection_spec.rb[3:1:5] | passed | 0.00004 seconds |
|
|
29
|
-
./spec/carddb/collection_spec.rb[4:1:1] | passed | 0.
|
|
30
|
-
./spec/carddb/collection_spec.rb[4:1:2] | passed | 0.
|
|
31
|
-
./spec/carddb/collection_spec.rb[4:1:3] | passed | 0.
|
|
30
|
+
./spec/carddb/collection_spec.rb[4:1:1] | passed | 0.00019 seconds |
|
|
31
|
+
./spec/carddb/collection_spec.rb[4:1:2] | passed | 0.00017 seconds |
|
|
32
|
+
./spec/carddb/collection_spec.rb[4:1:3] | passed | 0.00016 seconds |
|
|
32
33
|
./spec/carddb/collection_spec.rb[4:1:4] | passed | 0.00004 seconds |
|
|
33
|
-
./spec/carddb/configuration_spec.rb[1:1:1] | passed | 0.
|
|
34
|
-
./spec/carddb/configuration_spec.rb[1:1:2] | passed | 0.
|
|
34
|
+
./spec/carddb/configuration_spec.rb[1:1:1] | passed | 0.00004 seconds |
|
|
35
|
+
./spec/carddb/configuration_spec.rb[1:1:2] | passed | 0.00003 seconds |
|
|
35
36
|
./spec/carddb/configuration_spec.rb[1:1:3] | passed | 0.00003 seconds |
|
|
36
37
|
./spec/carddb/configuration_spec.rb[1:1:4] | passed | 0.00003 seconds |
|
|
37
38
|
./spec/carddb/configuration_spec.rb[1:1:5] | passed | 0.00003 seconds |
|
|
38
39
|
./spec/carddb/configuration_spec.rb[1:1:6] | passed | 0.00003 seconds |
|
|
39
|
-
./spec/carddb/configuration_spec.rb[1:2:1:1] | passed | 0.
|
|
40
|
-
./spec/carddb/configuration_spec.rb[1:2:2:1] | passed | 0.
|
|
41
|
-
./spec/carddb/configuration_spec.rb[1:2:2:2] | passed | 0.
|
|
42
|
-
./spec/carddb/configuration_spec.rb[1:3:1:1] | passed | 0.
|
|
40
|
+
./spec/carddb/configuration_spec.rb[1:2:1:1] | passed | 0.00005 seconds |
|
|
41
|
+
./spec/carddb/configuration_spec.rb[1:2:2:1] | passed | 0.00004 seconds |
|
|
42
|
+
./spec/carddb/configuration_spec.rb[1:2:2:2] | passed | 0.00004 seconds |
|
|
43
|
+
./spec/carddb/configuration_spec.rb[1:3:1:1] | passed | 0.00003 seconds |
|
|
43
44
|
./spec/carddb/configuration_spec.rb[1:3:2:1] | passed | 0.00003 seconds |
|
|
44
45
|
./spec/carddb/configuration_spec.rb[1:3:2:2] | passed | 0.00004 seconds |
|
|
45
|
-
./spec/carddb/configuration_spec.rb[1:3:2:3] | passed | 0.
|
|
46
|
+
./spec/carddb/configuration_spec.rb[1:3:2:3] | passed | 0.00004 seconds |
|
|
46
47
|
./spec/carddb/configuration_spec.rb[1:4:1] | passed | 0.00003 seconds |
|
|
47
|
-
./spec/carddb/configuration_spec.rb[1:4:2] | passed | 0.
|
|
48
|
+
./spec/carddb/configuration_spec.rb[1:4:2] | passed | 0.00004 seconds |
|
|
48
49
|
./spec/carddb/configuration_spec.rb[1:5:1] | passed | 0.00003 seconds |
|
|
49
50
|
./spec/carddb/configuration_spec.rb[1:6:1] | passed | 0.00003 seconds |
|
|
50
|
-
./spec/carddb/configuration_spec.rb[1:6:2] | passed | 0.
|
|
51
|
+
./spec/carddb/configuration_spec.rb[1:6:2] | passed | 0.00003 seconds |
|
|
51
52
|
./spec/carddb/configuration_spec.rb[1:6:3] | passed | 0.00003 seconds |
|
|
52
53
|
./spec/carddb/configuration_spec.rb[1:7:1] | passed | 0.00003 seconds |
|
|
53
|
-
./spec/carddb/configuration_spec.rb[1:7:2] | passed | 0.
|
|
54
|
+
./spec/carddb/configuration_spec.rb[1:7:2] | passed | 0.00004 seconds |
|
|
54
55
|
./spec/carddb/configuration_spec.rb[1:7:3] | passed | 0.00004 seconds |
|
|
55
|
-
./spec/carddb/deck_tokens_spec.rb[1:1:1] | passed | 0.
|
|
56
|
-
./spec/carddb/deck_tokens_spec.rb[1:2:1] | passed | 0.
|
|
57
|
-
./spec/carddb/deck_tokens_spec.rb[1:2:2] | passed | 0.
|
|
56
|
+
./spec/carddb/deck_tokens_spec.rb[1:1:1] | passed | 0.00073 seconds |
|
|
57
|
+
./spec/carddb/deck_tokens_spec.rb[1:2:1] | passed | 0.00077 seconds |
|
|
58
|
+
./spec/carddb/deck_tokens_spec.rb[1:2:2] | passed | 0.00026 seconds |
|
|
58
59
|
./spec/carddb/deck_tokens_spec.rb[1:2:3] | passed | 0.00007 seconds |
|
|
59
60
|
./spec/carddb/filter_builder_spec.rb[1:1:1] | passed | 0.00004 seconds |
|
|
60
|
-
./spec/carddb/filter_builder_spec.rb[1:1:2] | passed | 0.
|
|
61
|
+
./spec/carddb/filter_builder_spec.rb[1:1:2] | passed | 0.00004 seconds |
|
|
61
62
|
./spec/carddb/filter_builder_spec.rb[1:1:3] | passed | 0.00003 seconds |
|
|
62
|
-
./spec/carddb/filter_builder_spec.rb[1:1:4] | passed | 0.
|
|
63
|
+
./spec/carddb/filter_builder_spec.rb[1:1:4] | passed | 0.00004 seconds |
|
|
63
64
|
./spec/carddb/filter_builder_spec.rb[1:1:5] | passed | 0.00003 seconds |
|
|
64
65
|
./spec/carddb/filter_builder_spec.rb[1:1:6] | passed | 0.00004 seconds |
|
|
65
|
-
./spec/carddb/filter_builder_spec.rb[1:1:7] | passed | 0.
|
|
66
|
+
./spec/carddb/filter_builder_spec.rb[1:1:7] | passed | 0.00003 seconds |
|
|
66
67
|
./spec/carddb/filter_builder_spec.rb[1:1:8] | passed | 0.00003 seconds |
|
|
67
|
-
./spec/carddb/filter_builder_spec.rb[1:2:1] | passed | 0.
|
|
68
|
+
./spec/carddb/filter_builder_spec.rb[1:2:1] | passed | 0.00003 seconds |
|
|
68
69
|
./spec/carddb/filter_builder_spec.rb[1:2:2] | passed | 0.00003 seconds |
|
|
69
70
|
./spec/carddb/filter_builder_spec.rb[1:2:3] | passed | 0.00003 seconds |
|
|
70
|
-
./spec/carddb/filter_builder_spec.rb[1:2:4] | passed | 0.
|
|
71
|
+
./spec/carddb/filter_builder_spec.rb[1:2:4] | passed | 0.00003 seconds |
|
|
71
72
|
./spec/carddb/filter_builder_spec.rb[1:2:5] | passed | 0.00003 seconds |
|
|
72
|
-
./spec/carddb/filter_builder_spec.rb[1:2:6] | passed | 0.
|
|
73
|
+
./spec/carddb/filter_builder_spec.rb[1:2:6] | passed | 0.00003 seconds |
|
|
73
74
|
./spec/carddb/filter_builder_spec.rb[1:2:7] | passed | 0.00003 seconds |
|
|
74
75
|
./spec/carddb/filter_builder_spec.rb[1:2:8] | passed | 0.00003 seconds |
|
|
75
76
|
./spec/carddb/filter_builder_spec.rb[1:2:9] | passed | 0.00003 seconds |
|
|
76
77
|
./spec/carddb/filter_builder_spec.rb[1:2:10] | passed | 0.00003 seconds |
|
|
77
78
|
./spec/carddb/filter_builder_spec.rb[1:2:11] | passed | 0.00003 seconds |
|
|
78
|
-
./spec/carddb/filter_builder_spec.rb[1:2:12] | passed | 0.
|
|
79
|
+
./spec/carddb/filter_builder_spec.rb[1:2:12] | passed | 0.00003 seconds |
|
|
79
80
|
./spec/carddb/filter_builder_spec.rb[1:2:13] | passed | 0.00003 seconds |
|
|
80
81
|
./spec/carddb/query_builder_spec.rb[1:1:1] | passed | 0.00004 seconds |
|
|
81
|
-
./spec/carddb/query_builder_spec.rb[1:1:2] | passed | 0.
|
|
82
|
-
./spec/carddb/query_builder_spec.rb[1:1:3] | passed | 0.
|
|
83
|
-
./spec/carddb/query_builder_spec.rb[1:2:1:1] | passed | 0.
|
|
82
|
+
./spec/carddb/query_builder_spec.rb[1:1:2] | passed | 0.00005 seconds |
|
|
83
|
+
./spec/carddb/query_builder_spec.rb[1:1:3] | passed | 0.00003 seconds |
|
|
84
|
+
./spec/carddb/query_builder_spec.rb[1:2:1:1] | passed | 0.00004 seconds |
|
|
84
85
|
./spec/carddb/query_builder_spec.rb[1:2:2:1] | passed | 0.00004 seconds |
|
|
85
|
-
./spec/carddb/query_builder_spec.rb[1:3:1] | passed | 0.
|
|
86
|
+
./spec/carddb/query_builder_spec.rb[1:3:1] | passed | 0.00005 seconds |
|
|
86
87
|
./spec/carddb/query_builder_spec.rb[1:3:2] | passed | 0.00004 seconds |
|
|
87
88
|
./spec/carddb/query_builder_spec.rb[1:4:1] | passed | 0.00004 seconds |
|
|
88
|
-
./spec/carddb/query_builder_spec.rb[1:4:2] | passed | 0.
|
|
89
|
+
./spec/carddb/query_builder_spec.rb[1:4:2] | passed | 0.00005 seconds |
|
|
89
90
|
./spec/carddb/query_builder_spec.rb[1:5:1] | passed | 0.00003 seconds |
|
|
90
|
-
./spec/carddb/query_builder_spec.rb[1:5:2] | passed | 0.
|
|
91
|
-
./spec/carddb/query_builder_spec.rb[1:5:3] | passed | 0.
|
|
92
|
-
./spec/carddb/query_builder_spec.rb[1:5:4] | passed | 0.
|
|
91
|
+
./spec/carddb/query_builder_spec.rb[1:5:2] | passed | 0.00004 seconds |
|
|
92
|
+
./spec/carddb/query_builder_spec.rb[1:5:3] | passed | 0.00004 seconds |
|
|
93
|
+
./spec/carddb/query_builder_spec.rb[1:5:4] | passed | 0.00003 seconds |
|
|
93
94
|
./spec/carddb/query_builder_spec.rb[1:5:5] | passed | 0.00005 seconds |
|
|
94
|
-
./spec/carddb/query_builder_spec.rb[1:5:6] | passed | 0.
|
|
95
|
-
./spec/carddb/query_builder_spec.rb[1:5:7] | passed | 0.
|
|
95
|
+
./spec/carddb/query_builder_spec.rb[1:5:6] | passed | 0.00003 seconds |
|
|
96
|
+
./spec/carddb/query_builder_spec.rb[1:5:7] | passed | 0.00003 seconds |
|
|
96
97
|
./spec/carddb/query_builder_spec.rb[1:5:8] | passed | 0.00003 seconds |
|
|
97
|
-
./spec/carddb/query_builder_spec.rb[1:5:9] | passed | 0.
|
|
98
|
-
./spec/carddb/query_builder_spec.rb[1:6:1] | passed | 0.
|
|
99
|
-
./spec/carddb/query_builder_spec.rb[1:6:2] | passed | 0.
|
|
100
|
-
./spec/carddb/query_builder_spec.rb[1:6:3] | passed | 0.
|
|
98
|
+
./spec/carddb/query_builder_spec.rb[1:5:9] | passed | 0.00005 seconds |
|
|
99
|
+
./spec/carddb/query_builder_spec.rb[1:6:1] | passed | 0.00004 seconds |
|
|
100
|
+
./spec/carddb/query_builder_spec.rb[1:6:2] | passed | 0.00004 seconds |
|
|
101
|
+
./spec/carddb/query_builder_spec.rb[1:6:3] | passed | 0.00004 seconds |
|
|
101
102
|
./spec/carddb/query_builder_spec.rb[1:6:4] | passed | 0.00004 seconds |
|
|
102
|
-
./spec/carddb/query_builder_spec.rb[1:6:5] | passed | 0.
|
|
103
|
-
./spec/carddb/query_builder_spec.rb[1:6:6] | passed | 0.
|
|
104
|
-
./spec/carddb/
|
|
105
|
-
./spec/carddb/
|
|
106
|
-
./spec/carddb/
|
|
107
|
-
./spec/carddb/
|
|
108
|
-
./spec/carddb/resources/
|
|
109
|
-
./spec/carddb/resources/
|
|
110
|
-
./spec/carddb/resources/
|
|
111
|
-
./spec/carddb/resources/decks_spec.rb[1:
|
|
112
|
-
./spec/carddb/resources/decks_spec.rb[1:
|
|
103
|
+
./spec/carddb/query_builder_spec.rb[1:6:5] | passed | 0.00005 seconds |
|
|
104
|
+
./spec/carddb/query_builder_spec.rb[1:6:6] | passed | 0.00006 seconds |
|
|
105
|
+
./spec/carddb/query_builder_spec.rb[1:6:7] | passed | 0.00006 seconds |
|
|
106
|
+
./spec/carddb/query_builder_spec.rb[1:6:8] | passed | 0.00003 seconds |
|
|
107
|
+
./spec/carddb/query_builder_spec.rb[1:6:9] | passed | 0.00004 seconds |
|
|
108
|
+
./spec/carddb/query_builder_spec.rb[1:6:10] | passed | 0.00004 seconds |
|
|
109
|
+
./spec/carddb/resources/datasets_spec.rb[1:1:1] | passed | 0.0039 seconds |
|
|
110
|
+
./spec/carddb/resources/datasets_spec.rb[1:1:2] | passed | 0.00382 seconds |
|
|
111
|
+
./spec/carddb/resources/datasets_spec.rb[1:2:1] | passed | 0.00393 seconds |
|
|
112
|
+
./spec/carddb/resources/decks_spec.rb[1:1:1] | passed | 0.00386 seconds |
|
|
113
|
+
./spec/carddb/resources/decks_spec.rb[1:1:2] | passed | 0.00381 seconds |
|
|
114
|
+
./spec/carddb/resources/decks_spec.rb[1:1:3] | passed | 0.00385 seconds |
|
|
115
|
+
./spec/carddb/resources/decks_spec.rb[1:1:4] | passed | 0.00374 seconds |
|
|
116
|
+
./spec/carddb/resources/decks_spec.rb[1:2:1] | passed | 0.00412 seconds |
|
|
117
|
+
./spec/carddb/resources/decks_spec.rb[1:2:2] | passed | 0.00757 seconds |
|
|
113
118
|
./spec/carddb/resources/decks_spec.rb[1:2:3] | passed | 0.00006 seconds |
|
|
114
|
-
./spec/carddb/resources/decks_spec.rb[1:3:1] | passed | 0.
|
|
115
|
-
./spec/carddb/resources/decks_spec.rb[1:4:1] | passed | 0.
|
|
116
|
-
./spec/carddb/resources/decks_spec.rb[1:5:1] | passed | 0.
|
|
117
|
-
./spec/carddb/resources/decks_spec.rb[1:6:1] | passed | 0.
|
|
118
|
-
./spec/carddb/resources/decks_spec.rb[1:6:2] | passed | 0.
|
|
119
|
-
./spec/carddb/resources/decks_spec.rb[1:6:3] | passed | 0.
|
|
120
|
-
./spec/carddb/resources/decks_spec.rb[1:6:4] | passed | 0.
|
|
121
|
-
./spec/carddb/resources/decks_spec.rb[1:7:1] | passed | 0.
|
|
122
|
-
./spec/carddb/resources/decks_spec.rb[1:8:1] | passed | 0.
|
|
123
|
-
./spec/carddb/resources/decks_spec.rb[1:9:1] | passed | 0.
|
|
124
|
-
./spec/carddb/resources/decks_spec.rb[1:10:1] | passed | 0.
|
|
125
|
-
./spec/carddb/resources/decks_spec.rb[1:10:2] | passed | 0.
|
|
126
|
-
./spec/carddb/resources/decks_spec.rb[1:10:3] | passed | 0.
|
|
127
|
-
./spec/carddb/resources/decks_spec.rb[1:10:4] | passed | 0.
|
|
128
|
-
./spec/carddb/resources/decks_spec.rb[1:11:1] | passed | 0.
|
|
129
|
-
./spec/carddb/resources/decks_spec.rb[1:12:1] | passed | 0.
|
|
130
|
-
./spec/carddb/resources/decks_spec.rb[1:12:2] | passed | 0.
|
|
131
|
-
./spec/carddb/resources/decks_spec.rb[1:12:3] | passed | 0.
|
|
132
|
-
./spec/carddb/resources/decks_spec.rb[1:12:4] | passed | 0.
|
|
133
|
-
./spec/carddb/resources/decks_spec.rb[1:13:1] | passed | 0.
|
|
134
|
-
./spec/carddb/resources/decks_spec.rb[1:14:1] | passed | 0.
|
|
135
|
-
./spec/carddb/resources/decks_spec.rb[1:15:1] | passed | 0.
|
|
136
|
-
./spec/carddb/resources/decks_spec.rb[1:15:2] | passed | 0.
|
|
137
|
-
./spec/carddb/resources/decks_spec.rb[1:15:3] | passed | 0.
|
|
138
|
-
./spec/carddb/resources/decks_spec.rb[1:16:1] | passed | 0.
|
|
139
|
-
./spec/carddb/resources/decks_spec.rb[1:17:1] | passed | 0.
|
|
140
|
-
./spec/carddb/resources/decks_spec.rb[1:18:1] | passed | 0.
|
|
141
|
-
./spec/carddb/resources/decks_spec.rb[1:19:1] | passed | 0.
|
|
142
|
-
./spec/carddb/resources/decks_spec.rb[1:20:1] | passed | 0.
|
|
143
|
-
./spec/carddb/resources/decks_spec.rb[1:21:1] | passed | 0.
|
|
144
|
-
./spec/carddb/resources/games_spec.rb[1:1:1] | passed | 0.
|
|
119
|
+
./spec/carddb/resources/decks_spec.rb[1:3:1] | passed | 0.00387 seconds |
|
|
120
|
+
./spec/carddb/resources/decks_spec.rb[1:4:1] | passed | 0.00383 seconds |
|
|
121
|
+
./spec/carddb/resources/decks_spec.rb[1:5:1] | passed | 0.00386 seconds |
|
|
122
|
+
./spec/carddb/resources/decks_spec.rb[1:6:1] | passed | 0.00399 seconds |
|
|
123
|
+
./spec/carddb/resources/decks_spec.rb[1:6:2] | passed | 0.00384 seconds |
|
|
124
|
+
./spec/carddb/resources/decks_spec.rb[1:6:3] | passed | 0.00376 seconds |
|
|
125
|
+
./spec/carddb/resources/decks_spec.rb[1:6:4] | passed | 0.00008 seconds |
|
|
126
|
+
./spec/carddb/resources/decks_spec.rb[1:7:1] | passed | 0.00378 seconds |
|
|
127
|
+
./spec/carddb/resources/decks_spec.rb[1:8:1] | passed | 0.00372 seconds |
|
|
128
|
+
./spec/carddb/resources/decks_spec.rb[1:9:1] | passed | 0.00388 seconds |
|
|
129
|
+
./spec/carddb/resources/decks_spec.rb[1:10:1] | passed | 0.00394 seconds |
|
|
130
|
+
./spec/carddb/resources/decks_spec.rb[1:10:2] | passed | 0.00376 seconds |
|
|
131
|
+
./spec/carddb/resources/decks_spec.rb[1:10:3] | passed | 0.00738 seconds |
|
|
132
|
+
./spec/carddb/resources/decks_spec.rb[1:10:4] | passed | 0.0043 seconds |
|
|
133
|
+
./spec/carddb/resources/decks_spec.rb[1:11:1] | passed | 0.00375 seconds |
|
|
134
|
+
./spec/carddb/resources/decks_spec.rb[1:12:1] | passed | 0.00411 seconds |
|
|
135
|
+
./spec/carddb/resources/decks_spec.rb[1:12:2] | passed | 0.00373 seconds |
|
|
136
|
+
./spec/carddb/resources/decks_spec.rb[1:12:3] | passed | 0.00423 seconds |
|
|
137
|
+
./spec/carddb/resources/decks_spec.rb[1:12:4] | passed | 0.00007 seconds |
|
|
138
|
+
./spec/carddb/resources/decks_spec.rb[1:13:1] | passed | 0.00368 seconds |
|
|
139
|
+
./spec/carddb/resources/decks_spec.rb[1:14:1] | passed | 0.00378 seconds |
|
|
140
|
+
./spec/carddb/resources/decks_spec.rb[1:15:1] | passed | 0.00401 seconds |
|
|
141
|
+
./spec/carddb/resources/decks_spec.rb[1:15:2] | passed | 0.00423 seconds |
|
|
142
|
+
./spec/carddb/resources/decks_spec.rb[1:15:3] | passed | 0.00406 seconds |
|
|
143
|
+
./spec/carddb/resources/decks_spec.rb[1:16:1] | passed | 0.00463 seconds |
|
|
144
|
+
./spec/carddb/resources/decks_spec.rb[1:17:1] | passed | 0.00469 seconds |
|
|
145
|
+
./spec/carddb/resources/decks_spec.rb[1:18:1] | passed | 0.00366 seconds |
|
|
146
|
+
./spec/carddb/resources/decks_spec.rb[1:19:1] | passed | 0.00364 seconds |
|
|
147
|
+
./spec/carddb/resources/decks_spec.rb[1:20:1] | passed | 0.00351 seconds |
|
|
148
|
+
./spec/carddb/resources/decks_spec.rb[1:21:1] | passed | 0.00369 seconds |
|
|
149
|
+
./spec/carddb/resources/games_spec.rb[1:1:1] | passed | 0.00367 seconds |
|
|
145
150
|
./spec/carddb/resources/games_spec.rb[1:1:2] | passed | 0.00006 seconds |
|
|
146
|
-
./spec/carddb/resources/games_spec.rb[1:2:1] | passed | 0.
|
|
147
|
-
./spec/carddb/resources/games_spec.rb[1:2:2] | passed | 0.
|
|
148
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:1:1] | passed | 0.
|
|
149
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:1:2] | passed | 0.
|
|
150
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:1:3] | passed | 0.
|
|
151
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:2:1] | passed | 0.
|
|
151
|
+
./spec/carddb/resources/games_spec.rb[1:2:1] | passed | 0.00466 seconds |
|
|
152
|
+
./spec/carddb/resources/games_spec.rb[1:2:2] | passed | 0.00366 seconds |
|
|
153
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:1:1] | passed | 0.00368 seconds |
|
|
154
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:1:2] | passed | 0.00464 seconds |
|
|
155
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:1:3] | passed | 0.00397 seconds |
|
|
156
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:2:1] | passed | 0.00507 seconds |
|
|
152
157
|
./spec/carddb/resources/publisher_workflows_spec.rb[1:2:2] | passed | 0.00006 seconds |
|
|
153
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:3:1] | passed | 0.
|
|
154
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:3:2] | passed | 0.
|
|
155
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:3:3] | passed | 0.
|
|
156
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:4:1] | passed | 0.
|
|
157
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:4:2] | passed | 0.
|
|
158
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:4:3] | passed | 0.
|
|
159
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:5:1] | passed | 0.
|
|
160
|
-
./spec/carddb/resources/publisher_workflows_spec.rb[1:5:2] | passed | 0.
|
|
161
|
-
./spec/carddb/resources/publishers_spec.rb[1:1:1] | passed | 0.
|
|
162
|
-
./spec/carddb/resources/publishers_spec.rb[1:2:1] | passed | 0.
|
|
163
|
-
./spec/carddb/resources/records_spec.rb[1:1:1] | passed | 0.
|
|
164
|
-
./spec/carddb/resources/records_spec.rb[1:1:2] | passed | 0.
|
|
158
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:3:1] | passed | 0.0041 seconds |
|
|
159
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:3:2] | passed | 0.00383 seconds |
|
|
160
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:3:3] | passed | 0.00368 seconds |
|
|
161
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:4:1] | passed | 0.00382 seconds |
|
|
162
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:4:2] | passed | 0.00422 seconds |
|
|
163
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:4:3] | passed | 0.00385 seconds |
|
|
164
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:5:1] | passed | 0.00374 seconds |
|
|
165
|
+
./spec/carddb/resources/publisher_workflows_spec.rb[1:5:2] | passed | 0.00362 seconds |
|
|
166
|
+
./spec/carddb/resources/publishers_spec.rb[1:1:1] | passed | 0.00354 seconds |
|
|
167
|
+
./spec/carddb/resources/publishers_spec.rb[1:2:1] | passed | 0.00367 seconds |
|
|
168
|
+
./spec/carddb/resources/records_spec.rb[1:1:1] | passed | 0.00369 seconds |
|
|
169
|
+
./spec/carddb/resources/records_spec.rb[1:1:2] | passed | 0.0037 seconds |
|
|
165
170
|
./spec/carddb/resources/records_spec.rb[1:1:3] | passed | 0.00009 seconds |
|
|
166
|
-
./spec/carddb/resources/records_spec.rb[1:1:4] | passed | 0.
|
|
167
|
-
./spec/carddb/resources/records_spec.rb[1:2:1] | passed | 0.
|
|
168
|
-
./spec/carddb/resources/records_spec.rb[1:2:2] | passed | 0.
|
|
169
|
-
./spec/carddb/resources/records_spec.rb[1:2:3] | passed | 0.
|
|
170
|
-
./spec/carddb/resources/records_spec.rb[1:3:1] | passed | 0.
|
|
171
|
-
./spec/carddb/resources/records_spec.rb[1:3:2] | passed | 0.
|
|
172
|
-
./spec/carddb/resources/records_spec.rb[1:4:1] | passed | 0.
|
|
173
|
-
./spec/carddb/resources/records_spec.rb[1:4:2] | passed | 0.
|
|
171
|
+
./spec/carddb/resources/records_spec.rb[1:1:4] | passed | 0.00005 seconds |
|
|
172
|
+
./spec/carddb/resources/records_spec.rb[1:2:1] | passed | 0.00372 seconds |
|
|
173
|
+
./spec/carddb/resources/records_spec.rb[1:2:2] | passed | 0.00363 seconds |
|
|
174
|
+
./spec/carddb/resources/records_spec.rb[1:2:3] | passed | 0.00376 seconds |
|
|
175
|
+
./spec/carddb/resources/records_spec.rb[1:3:1] | passed | 0.00365 seconds |
|
|
176
|
+
./spec/carddb/resources/records_spec.rb[1:3:2] | passed | 0.0001 seconds |
|
|
177
|
+
./spec/carddb/resources/records_spec.rb[1:4:1] | passed | 0.00369 seconds |
|
|
178
|
+
./spec/carddb/resources/records_spec.rb[1:4:2] | passed | 0.00003 seconds |
|
|
174
179
|
./spec/carddb/resources/records_spec.rb[1:4:3] | passed | 0.00008 seconds |
|
|
175
|
-
./spec/carddb/resources/rules_spec.rb[1:1:1] | passed | 0.
|
|
176
|
-
./spec/carddb/resources/rules_spec.rb[1:2:1] | passed | 0.
|
|
177
|
-
./spec/carddb/resources/
|
|
178
|
-
./spec/carddb/resources/
|
|
179
|
-
./spec/carddb/resources/
|
|
180
|
-
./spec/carddb/resources/
|
|
181
|
-
./spec/carddb/resources/
|
|
182
|
-
./spec/carddb/resources/
|
|
183
|
-
./spec/carddb/resources/scans_spec.rb[1:
|
|
184
|
-
./spec/carddb/resources/scans_spec.rb[1:
|
|
185
|
-
./spec/
|
|
186
|
-
./spec/
|
|
187
|
-
./spec/
|
|
188
|
-
./spec/
|
|
180
|
+
./spec/carddb/resources/rules_spec.rb[1:1:1] | passed | 0.00675 seconds |
|
|
181
|
+
./spec/carddb/resources/rules_spec.rb[1:2:1] | passed | 0.00354 seconds |
|
|
182
|
+
./spec/carddb/resources/rulesets_spec.rb[1:1:1] | passed | 0.00458 seconds |
|
|
183
|
+
./spec/carddb/resources/rulesets_spec.rb[1:1:2] | passed | 0.00487 seconds |
|
|
184
|
+
./spec/carddb/resources/rulesets_spec.rb[1:2:1] | passed | 0.00357 seconds |
|
|
185
|
+
./spec/carddb/resources/rulesets_spec.rb[1:2:2] | passed | 0.00466 seconds |
|
|
186
|
+
./spec/carddb/resources/rulesets_spec.rb[1:3:1] | passed | 0.00476 seconds |
|
|
187
|
+
./spec/carddb/resources/rulesets_spec.rb[1:3:2] | passed | 0.00005 seconds |
|
|
188
|
+
./spec/carddb/resources/scans_spec.rb[1:1] | passed | 0.00368 seconds |
|
|
189
|
+
./spec/carddb/resources/scans_spec.rb[1:2] | passed | 0.00827 seconds |
|
|
190
|
+
./spec/carddb/resources/scans_spec.rb[1:3] | passed | 0.00432 seconds |
|
|
191
|
+
./spec/carddb/resources/scans_spec.rb[1:4] | passed | 0.00432 seconds |
|
|
192
|
+
./spec/carddb/resources/scans_spec.rb[1:5] | passed | 0.00359 seconds |
|
|
193
|
+
./spec/carddb/resources/scans_spec.rb[1:6] | passed | 0.00517 seconds |
|
|
194
|
+
./spec/carddb/resources/scans_spec.rb[1:7] | passed | 0.0035 seconds |
|
|
195
|
+
./spec/carddb/resources/scans_spec.rb[1:8] | passed | 0.00008 seconds |
|
|
196
|
+
./spec/carddb_spec.rb[1:1] | passed | 0.00004 seconds |
|
|
197
|
+
./spec/carddb_spec.rb[1:2:1] | passed | 0.00004 seconds |
|
|
198
|
+
./spec/carddb_spec.rb[1:3:1] | passed | 0.00145 seconds |
|
|
199
|
+
./spec/carddb_spec.rb[1:4:1] | passed | 0.00005 seconds |
|
|
189
200
|
./spec/carddb_spec.rb[1:5:1] | passed | 0.00003 seconds |
|
|
190
201
|
./spec/carddb_spec.rb[1:6:1] | passed | 0.00003 seconds |
|
|
191
202
|
./spec/carddb_spec.rb[1:7:1] | passed | 0.00003 seconds |
|
|
192
203
|
./spec/carddb_spec.rb[1:8:1] | passed | 0.00003 seconds |
|
|
193
204
|
./spec/carddb_spec.rb[1:9:1] | passed | 0.00003 seconds |
|
|
205
|
+
./spec/carddb_spec.rb[1:10:1] | passed | 0.00003 seconds |
|
data/lib/carddb/client.rb
CHANGED
|
@@ -154,6 +154,13 @@ module CardDB
|
|
|
154
154
|
@rules ||= Resources::Rules.new(self, connection, config)
|
|
155
155
|
end
|
|
156
156
|
|
|
157
|
+
# Access the Rulesets resource
|
|
158
|
+
#
|
|
159
|
+
# @return [Resources::Rulesets]
|
|
160
|
+
def rulesets
|
|
161
|
+
@rulesets ||= Resources::Rulesets.new(self, connection, config)
|
|
162
|
+
end
|
|
163
|
+
|
|
157
164
|
# Get information about the current API key
|
|
158
165
|
#
|
|
159
166
|
# @return [Hash, nil] API key info or nil if no API key
|
data/lib/carddb/collection.rb
CHANGED
|
@@ -2001,6 +2001,117 @@ module CardDB
|
|
|
2001
2001
|
end
|
|
2002
2002
|
end
|
|
2003
2003
|
|
|
2004
|
+
class Ruleset < Resource
|
|
2005
|
+
def id = data['id']
|
|
2006
|
+
def game_id = data['gameId']
|
|
2007
|
+
def game = data['game']
|
|
2008
|
+
def key = data['key']
|
|
2009
|
+
def name = data['name']
|
|
2010
|
+
def description = data['description']
|
|
2011
|
+
def tags = data['tags'] || []
|
|
2012
|
+
def sort_order = data['sortOrder']
|
|
2013
|
+
def current_version_id = data['currentVersionId']
|
|
2014
|
+
def archived_at = parse_time(data['archivedAt'])
|
|
2015
|
+
def archived? = !!data['isArchived']
|
|
2016
|
+
def created_at = parse_time(data['createdAt'])
|
|
2017
|
+
def updated_at = parse_time(data['updatedAt'])
|
|
2018
|
+
|
|
2019
|
+
def current_version
|
|
2020
|
+
@current_version ||= data['currentVersion'] ? RulesetVersion.new(data['currentVersion'], client: client) : nil
|
|
2021
|
+
end
|
|
2022
|
+
end
|
|
2023
|
+
|
|
2024
|
+
class RulesetVersion < Resource
|
|
2025
|
+
def id = data['id']
|
|
2026
|
+
def ruleset_id = data['rulesetId']
|
|
2027
|
+
def version_label = data['versionLabel']
|
|
2028
|
+
def status = data['status']
|
|
2029
|
+
def rules = data['rules'] || {}
|
|
2030
|
+
def card_dataset_id = data['cardDatasetId']
|
|
2031
|
+
def card_dataset_version_id = data['cardDatasetVersionId']
|
|
2032
|
+
def source_dataset_id = data['sourceDatasetId']
|
|
2033
|
+
def source_dataset_version_id = data['sourceDatasetVersionId']
|
|
2034
|
+
def source_dataset_record_id = data['sourceDatasetRecordId']
|
|
2035
|
+
def source_record_identifier = data['sourceRecordIdentifier']
|
|
2036
|
+
def rules_fingerprint = data['rulesFingerprint']
|
|
2037
|
+
def effective_at = parse_time(data['effectiveAt'])
|
|
2038
|
+
def changelog = data['changelog']
|
|
2039
|
+
def created_by_account_id = data['createdByAccountId']
|
|
2040
|
+
def published_by_account_id = data['publishedByAccountId']
|
|
2041
|
+
def published_at = parse_time(data['publishedAt'])
|
|
2042
|
+
def superseded_at = parse_time(data['supersededAt'])
|
|
2043
|
+
def created_at = parse_time(data['createdAt'])
|
|
2044
|
+
def updated_at = parse_time(data['updatedAt'])
|
|
2045
|
+
def draft? = status == 'DRAFT'
|
|
2046
|
+
def active? = status == 'ACTIVE'
|
|
2047
|
+
|
|
2048
|
+
def section_definitions
|
|
2049
|
+
@section_definitions ||= (data['sectionDefinitions'] || []).map do |definition|
|
|
2050
|
+
DeckSectionDefinition.new(definition, client: client)
|
|
2051
|
+
end
|
|
2052
|
+
end
|
|
2053
|
+
end
|
|
2054
|
+
|
|
2055
|
+
class DeckValidationRules < Resource
|
|
2056
|
+
def ruleset_id = data['rulesetId']
|
|
2057
|
+
def ruleset_version_id = data['rulesetVersionId']
|
|
2058
|
+
def ruleset_key = data['rulesetKey']
|
|
2059
|
+
def ruleset_version_label = data['rulesetVersionLabel']
|
|
2060
|
+
def rules = data['rules'] || {}
|
|
2061
|
+
|
|
2062
|
+
def sections
|
|
2063
|
+
@sections ||= (data['sections'] || []).map { |section| DeckSectionDefinition.new(section, client: client) }
|
|
2064
|
+
end
|
|
2065
|
+
end
|
|
2066
|
+
|
|
2067
|
+
class RulesetValidationImpactDeck < Resource
|
|
2068
|
+
def deck_id = data['deckId']
|
|
2069
|
+
def title = data['title']
|
|
2070
|
+
def slug = data['slug']
|
|
2071
|
+
def state = data['state']
|
|
2072
|
+
def unpublished_changes? = !!data['hasUnpublishedChanges']
|
|
2073
|
+
def valid? = !!data['valid']
|
|
2074
|
+
def blocker_count = data['blockerCount']
|
|
2075
|
+
def warning_count = data['warningCount']
|
|
2076
|
+
def affected_entry_count = data['affectedEntryCount']
|
|
2077
|
+
|
|
2078
|
+
def issues
|
|
2079
|
+
@issues ||= (data['issues'] || []).map { |issue| DeckValidationIssue.new(issue, client: client) }
|
|
2080
|
+
end
|
|
2081
|
+
end
|
|
2082
|
+
|
|
2083
|
+
class RulesetValidationImpact < Resource
|
|
2084
|
+
def ruleset_id = data['rulesetId']
|
|
2085
|
+
def ruleset_version_id = data['rulesetVersionId']
|
|
2086
|
+
def checked_at = parse_time(data['checkedAt'])
|
|
2087
|
+
def affected_deck_count = data['affectedDeckCount']
|
|
2088
|
+
def invalid_deck_count = data['invalidDeckCount']
|
|
2089
|
+
def blocker_count = data['blockerCount']
|
|
2090
|
+
def warning_count = data['warningCount']
|
|
2091
|
+
|
|
2092
|
+
def results
|
|
2093
|
+
@results ||= (data['results'] || []).map { |deck| RulesetValidationImpactDeck.new(deck, client: client) }
|
|
2094
|
+
end
|
|
2095
|
+
end
|
|
2096
|
+
|
|
2097
|
+
class RulesetVersionDraftImportPreview < Resource
|
|
2098
|
+
def source_dataset_id = data['sourceDatasetId']
|
|
2099
|
+
def source_dataset_version_id = data['sourceDatasetVersionId']
|
|
2100
|
+
def source_dataset_record_id = data['sourceDatasetRecordId']
|
|
2101
|
+
def source_record_identifier = data['sourceRecordIdentifier']
|
|
2102
|
+
def rules = data['rules'] || {}
|
|
2103
|
+
def rules_fingerprint = data['rulesFingerprint']
|
|
2104
|
+
def summary = data['summary']
|
|
2105
|
+
def section_count = data['sectionCount']
|
|
2106
|
+
def copy_limit_count = data['copyLimitCount']
|
|
2107
|
+
|
|
2108
|
+
def section_definitions
|
|
2109
|
+
@section_definitions ||= (data['sectionDefinitions'] || []).map do |definition|
|
|
2110
|
+
DeckSectionDefinition.new(definition, client: client)
|
|
2111
|
+
end
|
|
2112
|
+
end
|
|
2113
|
+
end
|
|
2114
|
+
|
|
2004
2115
|
class DeckSectionDefinition < Resource
|
|
2005
2116
|
def key = data['key']
|
|
2006
2117
|
def label = data['label']
|
data/lib/carddb/query_builder.rb
CHANGED
|
@@ -1121,6 +1121,182 @@ module CardDB
|
|
|
1121
1121
|
GRAPHQL
|
|
1122
1122
|
end
|
|
1123
1123
|
|
|
1124
|
+
def rulesets(game_id:, include_archived: nil, first: nil, after: nil)
|
|
1125
|
+
args = build_args(
|
|
1126
|
+
{ gameId: game_id, includeArchived: include_archived, first: first, after: after },
|
|
1127
|
+
required: [:gameId]
|
|
1128
|
+
)
|
|
1129
|
+
|
|
1130
|
+
<<~GRAPHQL
|
|
1131
|
+
query Rulesets#{args[:definition]} {
|
|
1132
|
+
rulesets#{args[:call]} {
|
|
1133
|
+
#{ruleset_connection_fields}
|
|
1134
|
+
}
|
|
1135
|
+
}
|
|
1136
|
+
GRAPHQL
|
|
1137
|
+
end
|
|
1138
|
+
|
|
1139
|
+
def public_rulesets(game_id:, first: nil, after: nil)
|
|
1140
|
+
args = build_args({ gameId: game_id, first: first, after: after }, required: [:gameId])
|
|
1141
|
+
|
|
1142
|
+
<<~GRAPHQL
|
|
1143
|
+
query PublicRulesets#{args[:definition]} {
|
|
1144
|
+
publicRulesets#{args[:call]} {
|
|
1145
|
+
#{ruleset_connection_fields}
|
|
1146
|
+
}
|
|
1147
|
+
}
|
|
1148
|
+
GRAPHQL
|
|
1149
|
+
end
|
|
1150
|
+
|
|
1151
|
+
def ruleset
|
|
1152
|
+
<<~GRAPHQL
|
|
1153
|
+
query Ruleset($id: UUID, $gameId: UUID, $key: String) {
|
|
1154
|
+
ruleset(id: $id, gameId: $gameId, key: $key) {
|
|
1155
|
+
#{ruleset_fields}
|
|
1156
|
+
}
|
|
1157
|
+
}
|
|
1158
|
+
GRAPHQL
|
|
1159
|
+
end
|
|
1160
|
+
|
|
1161
|
+
def ruleset_versions(ruleset_id:, status: nil, first: nil, after: nil)
|
|
1162
|
+
args = build_args(
|
|
1163
|
+
{ rulesetId: ruleset_id, status: status, first: first, after: after },
|
|
1164
|
+
required: [:rulesetId],
|
|
1165
|
+
type_overrides: { status: 'RulesetVersionStatus' }
|
|
1166
|
+
)
|
|
1167
|
+
|
|
1168
|
+
<<~GRAPHQL
|
|
1169
|
+
query RulesetVersions#{args[:definition]} {
|
|
1170
|
+
rulesetVersions#{args[:call]} {
|
|
1171
|
+
#{ruleset_version_connection_fields}
|
|
1172
|
+
}
|
|
1173
|
+
}
|
|
1174
|
+
GRAPHQL
|
|
1175
|
+
end
|
|
1176
|
+
|
|
1177
|
+
def ruleset_version
|
|
1178
|
+
<<~GRAPHQL
|
|
1179
|
+
query RulesetVersion($id: UUID!) {
|
|
1180
|
+
rulesetVersion(id: $id) {
|
|
1181
|
+
#{ruleset_version_fields}
|
|
1182
|
+
}
|
|
1183
|
+
}
|
|
1184
|
+
GRAPHQL
|
|
1185
|
+
end
|
|
1186
|
+
|
|
1187
|
+
def ruleset_validation_rules
|
|
1188
|
+
<<~GRAPHQL
|
|
1189
|
+
query RulesetValidationRules($gameId: UUID!, $rulesetKey: String!, $rulesetVersionId: UUID) {
|
|
1190
|
+
rulesetValidationRules(gameId: $gameId, rulesetKey: $rulesetKey, rulesetVersionId: $rulesetVersionId)
|
|
1191
|
+
}
|
|
1192
|
+
GRAPHQL
|
|
1193
|
+
end
|
|
1194
|
+
|
|
1195
|
+
def deck_validation_rules
|
|
1196
|
+
<<~GRAPHQL
|
|
1197
|
+
query DeckValidationRules($gameId: UUID!, $rulesetKey: String!, $rulesetVersionId: UUID) {
|
|
1198
|
+
deckValidationRules(gameId: $gameId, rulesetKey: $rulesetKey, rulesetVersionId: $rulesetVersionId) {
|
|
1199
|
+
#{deck_validation_rules_fields}
|
|
1200
|
+
}
|
|
1201
|
+
}
|
|
1202
|
+
GRAPHQL
|
|
1203
|
+
end
|
|
1204
|
+
|
|
1205
|
+
def ruleset_version_draft_import_preview
|
|
1206
|
+
<<~GRAPHQL
|
|
1207
|
+
query RulesetVersionDraftImportPreview($rulesetId: UUID!, $input: RulesetVersionDraftImportFromDatasetRecordInput!) {
|
|
1208
|
+
rulesetVersionDraftImportPreview(rulesetId: $rulesetId, input: $input) {
|
|
1209
|
+
#{ruleset_version_draft_import_preview_fields}
|
|
1210
|
+
}
|
|
1211
|
+
}
|
|
1212
|
+
GRAPHQL
|
|
1213
|
+
end
|
|
1214
|
+
|
|
1215
|
+
def ruleset_validation_impact(ruleset_version_id:, first: nil)
|
|
1216
|
+
args = build_args(
|
|
1217
|
+
{ rulesetVersionId: ruleset_version_id, first: first },
|
|
1218
|
+
required: [:rulesetVersionId]
|
|
1219
|
+
)
|
|
1220
|
+
|
|
1221
|
+
<<~GRAPHQL
|
|
1222
|
+
query RulesetValidationImpact#{args[:definition]} {
|
|
1223
|
+
rulesetValidationImpact#{args[:call]} {
|
|
1224
|
+
#{ruleset_validation_impact_fields}
|
|
1225
|
+
}
|
|
1226
|
+
}
|
|
1227
|
+
GRAPHQL
|
|
1228
|
+
end
|
|
1229
|
+
|
|
1230
|
+
def create_ruleset
|
|
1231
|
+
<<~GRAPHQL
|
|
1232
|
+
mutation RulesetCreate($input: RulesetCreateInput!) {
|
|
1233
|
+
rulesetCreate(input: $input) {
|
|
1234
|
+
#{ruleset_fields}
|
|
1235
|
+
}
|
|
1236
|
+
}
|
|
1237
|
+
GRAPHQL
|
|
1238
|
+
end
|
|
1239
|
+
|
|
1240
|
+
def update_ruleset
|
|
1241
|
+
<<~GRAPHQL
|
|
1242
|
+
mutation RulesetUpdate($id: UUID!, $input: RulesetUpdateInput!) {
|
|
1243
|
+
rulesetUpdate(id: $id, input: $input) {
|
|
1244
|
+
#{ruleset_fields}
|
|
1245
|
+
}
|
|
1246
|
+
}
|
|
1247
|
+
GRAPHQL
|
|
1248
|
+
end
|
|
1249
|
+
|
|
1250
|
+
def create_ruleset_version_draft
|
|
1251
|
+
<<~GRAPHQL
|
|
1252
|
+
mutation RulesetVersionDraftCreate($rulesetId: UUID!, $input: RulesetVersionDraftCreateInput!) {
|
|
1253
|
+
rulesetVersionDraftCreate(rulesetId: $rulesetId, input: $input) {
|
|
1254
|
+
#{ruleset_version_fields}
|
|
1255
|
+
}
|
|
1256
|
+
}
|
|
1257
|
+
GRAPHQL
|
|
1258
|
+
end
|
|
1259
|
+
|
|
1260
|
+
def import_ruleset_version_draft_from_dataset_record
|
|
1261
|
+
<<~GRAPHQL
|
|
1262
|
+
mutation RulesetVersionDraftImportFromDatasetRecord($rulesetId: UUID!, $input: RulesetVersionDraftImportFromDatasetRecordInput!) {
|
|
1263
|
+
rulesetVersionDraftImportFromDatasetRecord(rulesetId: $rulesetId, input: $input) {
|
|
1264
|
+
#{ruleset_version_fields}
|
|
1265
|
+
}
|
|
1266
|
+
}
|
|
1267
|
+
GRAPHQL
|
|
1268
|
+
end
|
|
1269
|
+
|
|
1270
|
+
def update_ruleset_version_draft
|
|
1271
|
+
<<~GRAPHQL
|
|
1272
|
+
mutation RulesetVersionDraftUpdate($id: UUID!, $input: RulesetVersionDraftUpdateInput!) {
|
|
1273
|
+
rulesetVersionDraftUpdate(id: $id, input: $input) {
|
|
1274
|
+
#{ruleset_version_fields}
|
|
1275
|
+
}
|
|
1276
|
+
}
|
|
1277
|
+
GRAPHQL
|
|
1278
|
+
end
|
|
1279
|
+
|
|
1280
|
+
def publish_ruleset_version
|
|
1281
|
+
<<~GRAPHQL
|
|
1282
|
+
mutation RulesetVersionPublish($id: UUID!, $input: RulesetVersionPublishInput) {
|
|
1283
|
+
rulesetVersionPublish(id: $id, input: $input) {
|
|
1284
|
+
#{ruleset_version_fields}
|
|
1285
|
+
}
|
|
1286
|
+
}
|
|
1287
|
+
GRAPHQL
|
|
1288
|
+
end
|
|
1289
|
+
|
|
1290
|
+
def activate_ruleset_version
|
|
1291
|
+
<<~GRAPHQL
|
|
1292
|
+
mutation RulesetVersionActivate($id: UUID!) {
|
|
1293
|
+
rulesetVersionActivate(id: $id) {
|
|
1294
|
+
#{ruleset_version_fields}
|
|
1295
|
+
}
|
|
1296
|
+
}
|
|
1297
|
+
GRAPHQL
|
|
1298
|
+
end
|
|
1299
|
+
|
|
1124
1300
|
# Builds a deckCollaborators query
|
|
1125
1301
|
def deck_collaborators
|
|
1126
1302
|
<<~GRAPHQL
|
|
@@ -1557,6 +1733,7 @@ module CardDB
|
|
|
1557
1733
|
externalRef: 'String',
|
|
1558
1734
|
deckId: 'UUID!',
|
|
1559
1735
|
gameId: 'UUID',
|
|
1736
|
+
rulesetId: 'UUID',
|
|
1560
1737
|
rulesetKey: 'String',
|
|
1561
1738
|
rulesetVersionId: 'UUID',
|
|
1562
1739
|
validateSchema: 'Boolean',
|
|
@@ -2585,6 +2762,121 @@ module CardDB
|
|
|
2585
2762
|
FIELDS
|
|
2586
2763
|
end
|
|
2587
2764
|
|
|
2765
|
+
def ruleset_version_fields
|
|
2766
|
+
<<~FIELDS
|
|
2767
|
+
id
|
|
2768
|
+
rulesetId
|
|
2769
|
+
versionLabel
|
|
2770
|
+
status
|
|
2771
|
+
rules
|
|
2772
|
+
sectionDefinitions {
|
|
2773
|
+
#{deck_section_definition_fields}
|
|
2774
|
+
}
|
|
2775
|
+
cardDatasetId
|
|
2776
|
+
cardDatasetVersionId
|
|
2777
|
+
sourceDatasetId
|
|
2778
|
+
sourceDatasetVersionId
|
|
2779
|
+
sourceDatasetRecordId
|
|
2780
|
+
sourceRecordIdentifier
|
|
2781
|
+
rulesFingerprint
|
|
2782
|
+
effectiveAt
|
|
2783
|
+
changelog
|
|
2784
|
+
createdByAccountId
|
|
2785
|
+
publishedByAccountId
|
|
2786
|
+
publishedAt
|
|
2787
|
+
supersededAt
|
|
2788
|
+
createdAt
|
|
2789
|
+
updatedAt
|
|
2790
|
+
FIELDS
|
|
2791
|
+
end
|
|
2792
|
+
|
|
2793
|
+
def ruleset_fields
|
|
2794
|
+
<<~FIELDS
|
|
2795
|
+
id
|
|
2796
|
+
gameId
|
|
2797
|
+
game {
|
|
2798
|
+
id
|
|
2799
|
+
key
|
|
2800
|
+
name
|
|
2801
|
+
}
|
|
2802
|
+
key
|
|
2803
|
+
name
|
|
2804
|
+
description
|
|
2805
|
+
tags
|
|
2806
|
+
sortOrder
|
|
2807
|
+
currentVersionId
|
|
2808
|
+
currentVersion {
|
|
2809
|
+
#{ruleset_version_fields}
|
|
2810
|
+
}
|
|
2811
|
+
archivedAt
|
|
2812
|
+
isArchived
|
|
2813
|
+
createdAt
|
|
2814
|
+
updatedAt
|
|
2815
|
+
FIELDS
|
|
2816
|
+
end
|
|
2817
|
+
|
|
2818
|
+
def deck_validation_rules_fields
|
|
2819
|
+
<<~FIELDS
|
|
2820
|
+
rulesetId
|
|
2821
|
+
rulesetVersionId
|
|
2822
|
+
rulesetKey
|
|
2823
|
+
rulesetVersionLabel
|
|
2824
|
+
rules
|
|
2825
|
+
sections {
|
|
2826
|
+
#{deck_section_definition_fields}
|
|
2827
|
+
}
|
|
2828
|
+
FIELDS
|
|
2829
|
+
end
|
|
2830
|
+
|
|
2831
|
+
def ruleset_validation_impact_deck_fields
|
|
2832
|
+
<<~FIELDS
|
|
2833
|
+
deckId
|
|
2834
|
+
title
|
|
2835
|
+
slug
|
|
2836
|
+
state
|
|
2837
|
+
hasUnpublishedChanges
|
|
2838
|
+
valid
|
|
2839
|
+
blockerCount
|
|
2840
|
+
warningCount
|
|
2841
|
+
affectedEntryCount
|
|
2842
|
+
issues {
|
|
2843
|
+
#{deck_validation_issue_fields}
|
|
2844
|
+
}
|
|
2845
|
+
FIELDS
|
|
2846
|
+
end
|
|
2847
|
+
|
|
2848
|
+
def ruleset_validation_impact_fields
|
|
2849
|
+
<<~FIELDS
|
|
2850
|
+
rulesetId
|
|
2851
|
+
rulesetVersionId
|
|
2852
|
+
checkedAt
|
|
2853
|
+
affectedDeckCount
|
|
2854
|
+
invalidDeckCount
|
|
2855
|
+
blockerCount
|
|
2856
|
+
warningCount
|
|
2857
|
+
results {
|
|
2858
|
+
#{ruleset_validation_impact_deck_fields}
|
|
2859
|
+
}
|
|
2860
|
+
FIELDS
|
|
2861
|
+
end
|
|
2862
|
+
|
|
2863
|
+
def ruleset_version_draft_import_preview_fields
|
|
2864
|
+
<<~FIELDS
|
|
2865
|
+
sourceDatasetId
|
|
2866
|
+
sourceDatasetVersionId
|
|
2867
|
+
sourceDatasetRecordId
|
|
2868
|
+
sourceRecordIdentifier
|
|
2869
|
+
rules
|
|
2870
|
+
sectionDefinitions {
|
|
2871
|
+
#{deck_section_definition_fields}
|
|
2872
|
+
}
|
|
2873
|
+
rulesFingerprint
|
|
2874
|
+
summary
|
|
2875
|
+
sectionCount
|
|
2876
|
+
copyLimitCount
|
|
2877
|
+
FIELDS
|
|
2878
|
+
end
|
|
2879
|
+
|
|
2588
2880
|
def deck_diff_fields
|
|
2589
2881
|
<<~FIELDS
|
|
2590
2882
|
deckId
|
|
@@ -2796,6 +3088,14 @@ module CardDB
|
|
|
2796
3088
|
FIELDS
|
|
2797
3089
|
end
|
|
2798
3090
|
|
|
3091
|
+
def ruleset_connection_fields
|
|
3092
|
+
connection_fields(ruleset_fields)
|
|
3093
|
+
end
|
|
3094
|
+
|
|
3095
|
+
def ruleset_version_connection_fields
|
|
3096
|
+
connection_fields(ruleset_version_fields)
|
|
3097
|
+
end
|
|
3098
|
+
|
|
2799
3099
|
def deck_collaborator_fields
|
|
2800
3100
|
<<~FIELDS
|
|
2801
3101
|
id
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module CardDB
|
|
4
|
+
module Resources
|
|
5
|
+
# First-class rulesets resource for deck validation rules.
|
|
6
|
+
class Rulesets < Base
|
|
7
|
+
def list(game_id:, include_archived: nil, first: nil, after: nil, cache: nil)
|
|
8
|
+
query = QueryBuilder.rulesets(
|
|
9
|
+
game_id: game_id,
|
|
10
|
+
include_archived: include_archived,
|
|
11
|
+
first: first,
|
|
12
|
+
after: after
|
|
13
|
+
)
|
|
14
|
+
variables = build_variables(gameId: game_id, includeArchived: include_archived, first: first, after: after)
|
|
15
|
+
key = cache_key('rulesets', 'list', **variables)
|
|
16
|
+
|
|
17
|
+
data = with_cache(key, resource: :rulesets, cache: cache) do
|
|
18
|
+
connection.execute(query, variables)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
Collection.new(
|
|
22
|
+
data['rulesets'],
|
|
23
|
+
item_class: Ruleset,
|
|
24
|
+
next_page_loader: ->(cursor) { list(game_id: game_id, include_archived: include_archived, first: first, after: cursor, cache: cache) },
|
|
25
|
+
client: client
|
|
26
|
+
)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
def list_public(game_id:, first: nil, after: nil, cache: nil)
|
|
30
|
+
query = QueryBuilder.public_rulesets(game_id: game_id, first: first, after: after)
|
|
31
|
+
variables = build_variables(gameId: game_id, first: first, after: after)
|
|
32
|
+
key = cache_key('rulesets', 'list_public', **variables)
|
|
33
|
+
|
|
34
|
+
data = with_cache(key, resource: :rulesets, cache: cache) do
|
|
35
|
+
connection.execute(query, variables)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
Collection.new(
|
|
39
|
+
data['publicRulesets'],
|
|
40
|
+
item_class: Ruleset,
|
|
41
|
+
next_page_loader: ->(cursor) { list_public(game_id: game_id, first: first, after: cursor, cache: cache) },
|
|
42
|
+
client: client
|
|
43
|
+
)
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def get(id, cache: nil)
|
|
47
|
+
key = cache_key('rulesets', 'get', id: id)
|
|
48
|
+
with_cache(key, resource: :rulesets, cache: cache) do
|
|
49
|
+
data = connection.execute(QueryBuilder.ruleset, { id: id })
|
|
50
|
+
data['ruleset'] ? Ruleset.new(data['ruleset'], client: client) : nil
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def get_by_key(game_id:, key:, cache: nil)
|
|
55
|
+
cache_key_value = cache_key('rulesets', 'get_by_key', game_id: game_id, key: key)
|
|
56
|
+
with_cache(cache_key_value, resource: :rulesets, cache: cache) do
|
|
57
|
+
data = connection.execute(QueryBuilder.ruleset, { gameId: game_id, key: key })
|
|
58
|
+
data['ruleset'] ? Ruleset.new(data['ruleset'], client: client) : nil
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
def versions(ruleset_id:, status: nil, first: nil, after: nil, cache: nil)
|
|
63
|
+
query = QueryBuilder.ruleset_versions(ruleset_id: ruleset_id, status: status, first: first, after: after)
|
|
64
|
+
variables = build_variables(rulesetId: ruleset_id, status: status, first: first, after: after)
|
|
65
|
+
key = cache_key('rulesets', 'versions', **variables)
|
|
66
|
+
|
|
67
|
+
data = with_cache(key, resource: :rulesets, cache: cache) do
|
|
68
|
+
connection.execute(query, variables)
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
Collection.new(
|
|
72
|
+
data['rulesetVersions'],
|
|
73
|
+
item_class: RulesetVersion,
|
|
74
|
+
next_page_loader: ->(cursor) { versions(ruleset_id: ruleset_id, status: status, first: first, after: cursor, cache: cache) },
|
|
75
|
+
client: client
|
|
76
|
+
)
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
def get_version(id, cache: nil)
|
|
80
|
+
key = cache_key('rulesets', 'get_version', id: id)
|
|
81
|
+
with_cache(key, resource: :rulesets, cache: cache) do
|
|
82
|
+
data = connection.execute(QueryBuilder.ruleset_version, { id: id })
|
|
83
|
+
data['rulesetVersion'] ? RulesetVersion.new(data['rulesetVersion'], client: client) : nil
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
def validation_rules(game_id:, ruleset_key:, ruleset_version_id: nil, cache: nil)
|
|
88
|
+
variables = build_variables(gameId: game_id, rulesetKey: ruleset_key, rulesetVersionId: ruleset_version_id)
|
|
89
|
+
key = cache_key('rulesets', 'validation_rules', **variables)
|
|
90
|
+
|
|
91
|
+
with_cache(key, resource: :rulesets, cache: cache) do
|
|
92
|
+
data = connection.execute(QueryBuilder.ruleset_validation_rules, variables)
|
|
93
|
+
data['rulesetValidationRules']
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
def deck_validation_rules(game_id:, ruleset_key:, ruleset_version_id: nil, cache: nil)
|
|
98
|
+
variables = build_variables(gameId: game_id, rulesetKey: ruleset_key, rulesetVersionId: ruleset_version_id)
|
|
99
|
+
key = cache_key('rulesets', 'deck_validation_rules', **variables)
|
|
100
|
+
|
|
101
|
+
with_cache(key, resource: :rulesets, cache: cache) do
|
|
102
|
+
data = connection.execute(QueryBuilder.deck_validation_rules, variables)
|
|
103
|
+
data['deckValidationRules'] ? DeckValidationRules.new(data['deckValidationRules'], client: client) : nil
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
def preview_import(ruleset_id:, input:)
|
|
108
|
+
data = connection.execute(
|
|
109
|
+
QueryBuilder.ruleset_version_draft_import_preview,
|
|
110
|
+
{ rulesetId: ruleset_id, input: input }
|
|
111
|
+
)
|
|
112
|
+
RulesetVersionDraftImportPreview.new(data['rulesetVersionDraftImportPreview'], client: client)
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
def validation_impact(ruleset_version_id:, first: nil, cache: nil)
|
|
116
|
+
query = QueryBuilder.ruleset_validation_impact(ruleset_version_id: ruleset_version_id, first: first)
|
|
117
|
+
variables = build_variables(rulesetVersionId: ruleset_version_id, first: first)
|
|
118
|
+
key = cache_key('rulesets', 'validation_impact', **variables)
|
|
119
|
+
|
|
120
|
+
with_cache(key, resource: :rulesets, cache: cache) do
|
|
121
|
+
data = connection.execute(query, variables)
|
|
122
|
+
RulesetValidationImpact.new(data['rulesetValidationImpact'], client: client)
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
def create(input:)
|
|
127
|
+
config.require_secret_credential!('rulesets.create')
|
|
128
|
+
|
|
129
|
+
data = connection.execute(QueryBuilder.create_ruleset, { input: input })
|
|
130
|
+
Ruleset.new(data['rulesetCreate'], client: client)
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
def update(id:, input:)
|
|
134
|
+
config.require_secret_credential!('rulesets.update')
|
|
135
|
+
|
|
136
|
+
data = connection.execute(QueryBuilder.update_ruleset, { id: id, input: input })
|
|
137
|
+
Ruleset.new(data['rulesetUpdate'], client: client)
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
def create_draft(ruleset_id:, input:)
|
|
141
|
+
config.require_secret_credential!('rulesets.create_draft')
|
|
142
|
+
|
|
143
|
+
data = connection.execute(QueryBuilder.create_ruleset_version_draft, { rulesetId: ruleset_id, input: input })
|
|
144
|
+
RulesetVersion.new(data['rulesetVersionDraftCreate'], client: client)
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
def import_draft_from_dataset_record(ruleset_id:, input:)
|
|
148
|
+
config.require_secret_credential!('rulesets.import_draft_from_dataset_record')
|
|
149
|
+
|
|
150
|
+
data = connection.execute(
|
|
151
|
+
QueryBuilder.import_ruleset_version_draft_from_dataset_record,
|
|
152
|
+
{ rulesetId: ruleset_id, input: input }
|
|
153
|
+
)
|
|
154
|
+
RulesetVersion.new(data['rulesetVersionDraftImportFromDatasetRecord'], client: client)
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
def update_draft(id:, input:)
|
|
158
|
+
config.require_secret_credential!('rulesets.update_draft')
|
|
159
|
+
|
|
160
|
+
data = connection.execute(QueryBuilder.update_ruleset_version_draft, { id: id, input: input })
|
|
161
|
+
RulesetVersion.new(data['rulesetVersionDraftUpdate'], client: client)
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
def publish_version(id:, input: nil)
|
|
165
|
+
config.require_secret_credential!('rulesets.publish_version')
|
|
166
|
+
|
|
167
|
+
variables = input.nil? ? { id: id } : { id: id, input: input }
|
|
168
|
+
data = connection.execute(QueryBuilder.publish_ruleset_version, variables)
|
|
169
|
+
RulesetVersion.new(data['rulesetVersionPublish'], client: client)
|
|
170
|
+
end
|
|
171
|
+
|
|
172
|
+
def activate_version(id:)
|
|
173
|
+
config.require_secret_credential!('rulesets.activate_version')
|
|
174
|
+
|
|
175
|
+
data = connection.execute(QueryBuilder.activate_ruleset_version, { id: id })
|
|
176
|
+
RulesetVersion.new(data['rulesetVersionActivate'], client: client)
|
|
177
|
+
end
|
|
178
|
+
end
|
|
179
|
+
end
|
|
180
|
+
end
|
data/lib/carddb/version.rb
CHANGED
data/lib/carddb.rb
CHANGED
|
@@ -22,6 +22,7 @@ require_relative 'carddb/resources/scans'
|
|
|
22
22
|
require_relative 'carddb/resources/scan_templates'
|
|
23
23
|
require_relative 'carddb/resources/decks'
|
|
24
24
|
require_relative 'carddb/resources/rules'
|
|
25
|
+
require_relative 'carddb/resources/rulesets'
|
|
25
26
|
require_relative 'carddb/batch'
|
|
26
27
|
require_relative 'carddb/client'
|
|
27
28
|
|
|
@@ -173,6 +174,13 @@ module CardDB
|
|
|
173
174
|
default_client.rules
|
|
174
175
|
end
|
|
175
176
|
|
|
177
|
+
# Access the Rulesets resource via the default client.
|
|
178
|
+
#
|
|
179
|
+
# @return [Resources::Rulesets]
|
|
180
|
+
def rulesets
|
|
181
|
+
default_client.rulesets
|
|
182
|
+
end
|
|
183
|
+
|
|
176
184
|
# Get information about the current API key.
|
|
177
185
|
#
|
|
178
186
|
# @return [Hash, nil]
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: carddb
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.4.
|
|
4
|
+
version: 0.4.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- CardDB Team
|
|
@@ -95,6 +95,7 @@ files:
|
|
|
95
95
|
- lib/carddb/resources/publishers.rb
|
|
96
96
|
- lib/carddb/resources/records.rb
|
|
97
97
|
- lib/carddb/resources/rules.rb
|
|
98
|
+
- lib/carddb/resources/rulesets.rb
|
|
98
99
|
- lib/carddb/resources/scan_templates.rb
|
|
99
100
|
- lib/carddb/resources/scans.rb
|
|
100
101
|
- lib/carddb/version.rb
|