aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ext_depends/D-YAML/source/dyaml/test/emitter.d
diff options
context:
space:
mode:
Diffstat (limited to 'src/ext_depends/D-YAML/source/dyaml/test/emitter.d')
-rw-r--r--src/ext_depends/D-YAML/source/dyaml/test/emitter.d132
1 files changed, 0 insertions, 132 deletions
diff --git a/src/ext_depends/D-YAML/source/dyaml/test/emitter.d b/src/ext_depends/D-YAML/source/dyaml/test/emitter.d
deleted file mode 100644
index 293f236..0000000
--- a/src/ext_depends/D-YAML/source/dyaml/test/emitter.d
+++ /dev/null
@@ -1,132 +0,0 @@
-
-// Copyright Ferdinand Majerech 2011-2014.
-// Distributed under the Boost Software License, Version 1.0.
-// (See accompanying file LICENSE_1_0.txt or copy at
-// http://www.boost.org/LICENSE_1_0.txt)
-
-module dyaml.test.emitter;
-
-@safe unittest
-{
- import std.array : Appender;
- import std.range : ElementType, isInputRange;
-
- import dyaml : CollectionStyle, LineBreak, Loader, Mark, ScalarStyle;
- import dyaml.emitter : Emitter;
- import dyaml.event : Event, EventID, mappingStartEvent, scalarEvent, sequenceStartEvent;
- import dyaml.test.common : assertEventsEqual, run;
-
- // Try to emit an event range.
- static void emitTestCommon(T)(ref Appender!string emitStream, T events, bool canonical = false) @safe
- if (isInputRange!T && is(ElementType!T == Event))
- {
- auto emitter = Emitter!(typeof(emitStream), char)(emitStream, canonical, 2, 80, LineBreak.unix);
- foreach (ref event; events)
- {
- emitter.emit(event);
- }
- }
- /**
- Test emitter by getting events from parsing a file, emitting them, parsing
- the emitted result and comparing events from parsing the emitted result with
- originally parsed events.
-
- Params:
- dataFilename = YAML file to parse.
- canonicalFilename = Canonical YAML file used as dummy to determine
- which data files to load.
- */
- static void testEmitterOnData(string dataFilename, string canonicalFilename) @safe
- {
- //Must exist due to Anchor, Tags reference counts.
- auto loader = Loader.fromFile(dataFilename);
- auto events = loader.parse();
- auto emitStream = Appender!string();
- emitTestCommon(emitStream, events);
-
- auto loader2 = Loader.fromString(emitStream.data);
- loader2.name = "TEST";
- auto newEvents = loader2.parse();
- assertEventsEqual(events, newEvents);
- }
- /**
- Test emitter by getting events from parsing a canonical YAML file, emitting
- them both in canonical and normal format, parsing the emitted results and
- comparing events from parsing the emitted result with originally parsed events.
-
- Params: canonicalFilename = Canonical YAML file to parse.
- */
- static void testEmitterOnCanonical(string canonicalFilename) @safe
- {
- //Must exist due to Anchor, Tags reference counts.
- auto loader = Loader.fromFile(canonicalFilename);
- auto events = loader.parse();
- foreach (canonical; [false, true])
- {
- auto emitStream = Appender!string();
- emitTestCommon(emitStream, events, canonical);
-
- auto loader2 = Loader.fromString(emitStream.data);
- loader2.name = "TEST";
- auto newEvents = loader2.parse();
- assertEventsEqual(events, newEvents);
- }
- }
- /**
- Test emitter by getting events from parsing a file, emitting them with all
- possible scalar and collection styles, parsing the emitted results and
- comparing events from parsing the emitted result with originally parsed events.
-
- Params:
- dataFilename = YAML file to parse.
- canonicalFilename = Canonical YAML file used as dummy to determine
- which data files to load.
- */
- static void testEmitterStyles(string dataFilename, string canonicalFilename) @safe
- {
- foreach (filename; [dataFilename, canonicalFilename])
- {
- //must exist due to Anchor, Tags reference counts
- auto loader = Loader.fromFile(canonicalFilename);
- auto events = loader.parse();
- foreach (flowStyle; [CollectionStyle.block, CollectionStyle.flow])
- {
- foreach (style; [ScalarStyle.literal, ScalarStyle.folded,
- ScalarStyle.doubleQuoted, ScalarStyle.singleQuoted,
- ScalarStyle.plain])
- {
- Event[] styledEvents;
- foreach (event; events)
- {
- if (event.id == EventID.scalar)
- {
- event = scalarEvent(Mark(), Mark(), event.anchor, event.tag,
- event.implicit,
- event.value, style);
- }
- else if (event.id == EventID.sequenceStart)
- {
- event = sequenceStartEvent(Mark(), Mark(), event.anchor,
- event.tag, event.implicit, flowStyle);
- }
- else if (event.id == EventID.mappingStart)
- {
- event = mappingStartEvent(Mark(), Mark(), event.anchor,
- event.tag, event.implicit, flowStyle);
- }
- styledEvents ~= event;
- }
- auto emitStream = Appender!string();
- emitTestCommon(emitStream, styledEvents);
- auto loader2 = Loader.fromString(emitStream.data);
- loader2.name = "TEST";
- auto newEvents = loader2.parse();
- assertEventsEqual(events, newEvents);
- }
- }
- }
- }
- run(&testEmitterOnData, ["data", "canonical"]);
- run(&testEmitterOnCanonical, ["canonical"]);
- run(&testEmitterStyles, ["data", "canonical"]);
-}