From 46b1dab433c928094ab26545ba229d6282d8c8e2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Adjemian=20=28Charybdis=29?=
 <stephane.adjemian@univ-lemans.fr>
Date: Wed, 11 Nov 2015 22:06:03 +0100
Subject: [PATCH] Added unit tests for setdiff method.

---
 src/@dates/setdiff.m | 97 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 97 insertions(+)

diff --git a/src/@dates/setdiff.m b/src/@dates/setdiff.m
index 7134201..2417db0 100644
--- a/src/@dates/setdiff.m
+++ b/src/@dates/setdiff.m
@@ -80,3 +80,100 @@ q.time = time;
 %$ t(2) = dassert(isempty(c2),logical(1));
 %$ T = all(t);
 %@eof:1
+
+%@test:2
+%$ % Define some dates objects
+%$ d1 = dates('1950Q1'):dates('1950Q4') ;
+%$ d2 = dates('1950Q3'):dates('1950Q4') ;
+%$
+%$ % Call the tested routine.
+%$ try
+%$     c1 = setdiff(d1,d2);
+%$     [c2, i] = setdiff(d1,d2);
+%$     t(1) = true;
+%$ catch
+%$     t(1) = false;
+%$ end
+%$
+%$ % Check the results.
+%$ if t(1)
+%$     t(2) = dassert(c1,c2);
+%$     t(3) = dassert(d1(i),c2);
+%$ end
+%$ T = all(t);
+%@eof:2
+
+%@test:3
+%$ % Define some dates objects
+%$ d1 = dates('1950Q1'):dates('1950Q4') ;
+%$ d2 = dates('1950M3'):dates('1950M4') ;
+%$
+%$ % Call the tested routine.
+%$ try
+%$     c1 = setdiff(d1,d2);
+%$     t(1) = false;
+%$ catch
+%$     t(1) = true;
+%$ end
+%$
+%$ T = all(t);
+%@eof:3
+
+%@test:4
+%$ % Define some dates objects
+%$ d = dates('1950Q1'):dates('1950Q4') ;
+%$
+%$ % Call the tested routine.
+%$ try
+%$     c1 = setdiff(d,1);
+%$     t(1) = false;
+%$ catch
+%$     t(1) = true;
+%$ end
+%$
+%$ T = all(t);
+%@eof:4
+
+%@test:5
+%$ % Define some dates objects
+%$ d1 = dates('1950Q1'):dates('1950Q4') ;
+%$ d2 = dates('1951Q3'):dates('1951Q4') ;
+%$
+%$ % Call the tested routine.
+%$ try
+%$     c1 = setdiff(d1,d2);
+%$     [c2, i] = setdiff(d1,d2);
+%$     t(1) = true;
+%$ catch
+%$     t(1) = false;
+%$ end
+%$
+%$ % Check the results.
+%$ if t(1)
+%$     t(2) = dassert(isequal(c1,d1),true);
+%$     t(3) = dassert(isequal(c1,d1(i)),true);
+%$ end
+%$ T = all(t);
+%@eof:5
+
+%@test:6
+%$ % Define some dates objects
+%$ d1 = dates('1950Q1'):dates('1950Q4') ;
+%$
+%$ % Call the tested routine.
+%$ try
+%$     c1 = setdiff(d1,d1);
+%$     [c2, i] = setdiff(d1,d1);
+%$     t(1) = true;
+%$ catch
+%$     t(1) = false;
+%$ end
+%$
+%$ % Check the results.
+%$ if t(1)
+%$     t(2) = dassert(isempty(c1),true);
+%$     t(3) = dassert(isempty(c2),true);
+%$     t(4) = dassert(isempty(i),true);
+%$ end
+%$ T = all(t);
+%@eof:5
-- 
GitLab