DRSS

Ugly RSS interface for D.
git clone git://xatko.vsos.ethz.ch/DRSS.git
Log | Files | Refs | Submodules

commit 9707276c245e0995dcd091a288964bdf79fb41c3
parent f7213764402f06b85be6fe0e161ff7ca0fdb03f6
Author: Dominik Schmidt <das1993@hotmail.com>
Date:   Thu, 10 Sep 2015 00:23:40 +0200

Add an unittest to the class.

Diffstat:
drss/rss.d | 30++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+), 0 deletions(-)

diff --git a/drss/rss.d b/drss/rss.d @@ -277,3 +277,33 @@ abstract class DRSS(T=Entry){ } } } + +/// +unittest{ + class TeRSSt : DRSS!(){ + private uint counter; + this(){ + date_reliability=DateReliable.YES; + super(HTTP()); + } + override void parse(string document){ + import std.datetime; + import std.conv; + + string cnt=to!string(counter); + SysTime st=SysTime(DateTime(1986,01,counter+1)); + assert(addEntry(Entry(Entry.Type.Plain, "ID"~cnt, "This is id number "~cnt, st))); + counter++; + } + override bool fetch(){ + return true; + } + } + TeRSSt t=new TeRSSt(); + foreach(i; 0..30){ + assert(t.update()); + assert(t.news.walkLength==1); + assert(t.news.front.id=="ID"~to!string(i)); + assert(t.length==i+1); + } +}