Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | s_expressions-test_tools: a function to build a S-expression directly from a string | 
|---|---|
| Timelines: | family | ancestors | descendants | both | trunk | 
| Files: | files | file ages | folders | 
| SHA1: | 
f0e8bc08bdc94367845880bdc802785d | 
| User & Date: | nat 2015-04-04 21:43:04.733 | 
Context
| 
   2015-04-10 
 | ||
| 21:14 | s_expressions: add equality operator on atoms, so clients don't have to depend on Ada.Streams check-in: e76def5969 user: nat tags: trunk | |
| 
   2015-04-04 
 | ||
| 21:43 | s_expressions-test_tools: a function to build a S-expression directly from a string check-in: f0e8bc08bd user: nat tags: trunk | |
| 
   2015-04-03 
 | ||
| 21:35 | static_maps-s_expressions-conditionals: add missing package in previous commits check-in: 6078a77bb3 user: nat tags: trunk | |
Changes
Changes to tests/natools-s_expressions-test_tools.adb.
1  | ------------------------------------------------------------------------------  | | > >  | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24  | ------------------------------------------------------------------------------ -- Copyright (c) 2013-2015, Natacha Porté -- -- -- -- Permission to use, copy, modify, and distribute this software for any -- -- purpose with or without fee is hereby granted, provided that the above -- -- copyright notice and this permission notice appear in all copies. -- -- -- -- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -- -- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF -- -- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR -- -- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES -- -- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -- -- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF -- -- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -- ------------------------------------------------------------------------------ with Natools.S_Expressions.Parsers; package body Natools.S_Expressions.Test_Tools is Hex_Digits : constant String := "0123456789ABCDEF"; function Encode_Hex (Value : Offset; Length : Positive) return String; function Hex_Slice  | 
| ︙ | ︙ | |||
479 480 481 482 483 484 485 486 487 488 489 490 491 492  | 
           & ", expected Add_Atom");
      else
         Test_Tools.Test_Atom_Accessors
           (Test, Tested, Expected, Level, Context);
      end if;
   end Next_And_Check;
   -------------------
   -- Memory Stream --
   -------------------
   overriding procedure Read
 | > > > > > > > > > > > > > > > >  | 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510  | 
           & ", expected Add_Atom");
      else
         Test_Tools.Test_Atom_Accessors
           (Test, Tested, Expected, Level, Context);
      end if;
   end Next_And_Check;
   function To_S_Expression (Text : String) return Caches.Reference is
   begin
      return To_S_Expression (To_Atom (Text));
   end To_S_Expression;
   function To_S_Expression (Data : Atom) return Caches.Reference is
      Stream : aliased Memory_Stream;
      Parser : Parsers.Stream_Parser (Stream'Access);
   begin
      Stream.Write (Data);
      Parser.Next;
      return Caches.Move (Parser);
   end To_S_Expression;
   -------------------
   -- Memory Stream --
   -------------------
   overriding procedure Read
 | 
| ︙ | ︙ | 
Changes to tests/natools-s_expressions-test_tools.ads.
1  | ------------------------------------------------------------------------------  | |  | 1 2 3 4 5 6 7 8 9  | ------------------------------------------------------------------------------ -- Copyright (c) 2013-2015, Natacha Porté -- -- -- -- Permission to use, copy, modify, and distribute this software for any -- -- purpose with or without fee is hereby granted, provided that the above -- -- copyright notice and this permission notice appear in all copies. -- -- -- -- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES -- -- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF --  | 
| ︙ | ︙ | |||
24 25 26 27 28 29 30 31 32 33 34 35 36 37  | ------------------------------------------------------------------------------ with Ada.Streams; with Natools.Tests; with Natools.S_Expressions.Atom_Buffers; package Natools.S_Expressions.Test_Tools is pragma Preelaborate (Test_Tools); package NT renames Natools.Tests; procedure Dump_Atom  | >  | 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38  | ------------------------------------------------------------------------------ with Ada.Streams; with Natools.Tests; with Natools.S_Expressions.Atom_Buffers; with Natools.S_Expressions.Caches; package Natools.S_Expressions.Test_Tools is pragma Preelaborate (Test_Tools); package NT renames Natools.Tests; procedure Dump_Atom  | 
| ︙ | ︙ | |||
83 84 85 86 87 88 89 90 91 92 93 94 95 96  | 
      Tested : in out Descriptor'Class;
      Expected : in Atom;
      Level : in Natural;
      Context : in String := "");
      --  Call Tested.Next and check current event is Add_Atom with Expected,
      --  using Test_Atom_Accessors.
   type Memory_Stream is new Ada.Streams.Root_Stream_Type with private;
   overriding procedure Read
     (Stream : in out Memory_Stream;
      Item : out Ada.Streams.Stream_Element_Array;
      Last : out Ada.Streams.Stream_Element_Offset);
 | > > > > >  | 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102  | 
      Tested : in out Descriptor'Class;
      Expected : in Atom;
      Level : in Natural;
      Context : in String := "");
      --  Call Tested.Next and check current event is Add_Atom with Expected,
      --  using Test_Atom_Accessors.
   function To_S_Expression (Text : String) return Caches.Reference;
   function To_S_Expression (Data : Atom) return Caches.Reference;
      --  Store a S-expression from its serialization
   type Memory_Stream is new Ada.Streams.Root_Stream_Type with private;
   overriding procedure Read
     (Stream : in out Memory_Stream;
      Item : out Ada.Streams.Stream_Element_Array;
      Last : out Ada.Streams.Stream_Element_Offset);
 | 
| ︙ | ︙ |