diff --git a/src/@dseries/lag_.m b/src/@dseries/lag_.m
index 9c2487c50056e0c91d449e6d9bbe8f6c5f9ac245..1cd1a05d44473dede7d3b7291fba279b42b31244 100644
--- a/src/@dseries/lag_.m
+++ b/src/@dseries/lag_.m
@@ -50,10 +50,16 @@ if p<0
     error('dseries:WrongInputArguments','Second input argument must be non negative! Use lead method instead.')
 end
 
+% Check that p is an integer
 if ~isint(p)
     error('dseries:WrongInputArguments','Second input argument must be an integer!')
 end
 
+% Return without changing anything if p==0
+if ~p
+    return
+end
+
 % Update data member
 o.data = [NaN(p, vobs(o));  o.data(1:end-p,:)];
 
@@ -81,4 +87,22 @@ end
 %$ end
 %$
 %$ T = all(t);
-%@eof:1
\ No newline at end of file
+%@eof:1
+
+%@test:2
+%$ try
+%$     data = transpose(0:1:50);
+%$     ts = dseries(data,'1950Q1');
+%$     ts.lag_(0);
+%$     t(1) = 1;
+%$ catch
+%$     t(1) = 0;
+%$ end
+%$
+%$ if t(1)
+%$     t(2) = dassert(ts.data,data,1e-15);
+%$     t(3) = isempty(ts.ops)
+%$ end
+%$
+%$ T = all(t);
+%@eof:2
\ No newline at end of file
diff --git a/src/@dseries/lead_.m b/src/@dseries/lead_.m
index 1a098bf049013f91f4e026d2c3e16d6ed4eda9d4..2c5aebe4b84cb69b24b9e0d733466cae2eec8228 100644
--- a/src/@dseries/lead_.m
+++ b/src/@dseries/lead_.m
@@ -50,10 +50,16 @@ if p<0
     error('dseries:WrongInputArguments','Second input argument must be non negative! Use lag method instead.')
 end
 
+% Check that p is an integer
 if ~isint(p)
     error('dseries:WrongInputArguments','Second input argument must be an integer!')
 end
 
+% Return without changing anything if p==0
+if ~p
+    return
+end
+
 % Update data member
 o.data = [  o.data(p+1:end,:); NaN(p, vobs(o));];
 
@@ -98,4 +104,22 @@ end
 %$ end
 %$
 %$ T = all(t);
-%@eof:2
\ No newline at end of file
+%@eof:2
+
+%@test:3
+%$ try
+%$     data = transpose(0:1:50);
+%$     ts = dseries(data,'1950Q1');
+%$     ts.lead_(0);
+%$     t(1) = 1;
+%$ catch
+%$     t(1) = 0;
+%$ end
+%$
+%$ if t(1)
+%$     t(2) = dassert(ts.data,data,1e-15);
+%$     t(3) = isempty(ts.ops)
+%$ end
+%$
+%$ T = all(t);
+%@eof:3
\ No newline at end of file