|
32 | 32 |
|
33 | 33 | import java.io.IOException;
|
34 | 34 | import java.io.UncheckedIOException;
|
| 35 | +import java.util.Collections; |
35 | 36 |
|
36 | 37 | public class ScriptMetaDataTests extends AbstractSerializingTestCase<ScriptMetaData> {
|
37 | 38 |
|
@@ -168,6 +169,42 @@ public void testLoadEmptyScripts() throws IOException {
|
168 | 169 | assertWarnings("empty templates should no longer be used");
|
169 | 170 | }
|
170 | 171 |
|
| 172 | + public void testOldStyleDropped() throws IOException { |
| 173 | + XContentBuilder builder = XContentBuilder.builder(XContentType.JSON.xContent()); |
| 174 | + |
| 175 | + builder.startObject(); |
| 176 | + { |
| 177 | + builder.startObject("painless#test"); |
| 178 | + { |
| 179 | + builder.field("lang", "painless"); |
| 180 | + builder.field("source", "code"); |
| 181 | + } |
| 182 | + builder.endObject(); |
| 183 | + builder.startObject("lang#test"); |
| 184 | + { |
| 185 | + builder.field("lang", "test"); |
| 186 | + builder.field("source", "code"); |
| 187 | + } |
| 188 | + builder.endObject(); |
| 189 | + builder.startObject("test"); |
| 190 | + { |
| 191 | + builder.field("lang", "painless"); |
| 192 | + builder.field("source", "code"); |
| 193 | + } |
| 194 | + builder.endObject(); |
| 195 | + } |
| 196 | + builder.endObject(); |
| 197 | + |
| 198 | + XContentParser parser = XContentType.JSON.xContent() |
| 199 | + .createParser(NamedXContentRegistry.EMPTY, DeprecationHandler.THROW_UNSUPPORTED_OPERATION, |
| 200 | + BytesReference.bytes(builder).streamInput()); |
| 201 | + ScriptMetaData smd = ScriptMetaData.fromXContent(parser); |
| 202 | + assertNull(smd.getStoredScript("painless#test")); |
| 203 | + assertNull(smd.getStoredScript("lang#test")); |
| 204 | + assertEquals(new StoredScriptSource("painless", "code", Collections.emptyMap()), smd.getStoredScript("test")); |
| 205 | + assertEquals(1, smd.getStoredScripts().size()); |
| 206 | + } |
| 207 | + |
171 | 208 | @Override
|
172 | 209 | protected boolean enableWarningsCheck() {
|
173 | 210 | return true;
|
|
0 commit comments