Xcos blocks: rewrite fromws_c to C++
[scilab.git] / scilab / modules / xcos / tests / unit_tests / fromws_tows_c.tst
1 // =============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2012 - Scilab Enterprises - Bruno JOFRET
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // =============================================================================
7 //
8 // <-- XCOS TEST -->
9 //
10 // Test Diagram with fromws after end behavior
11 // Input random values
12 //
13
14 assert_checktrue(importXcosDiagram(SCI+"/modules/xcos/tests/unit_tests/fromws_tows_c.zcos"));
15
16 // V_in size feat simulation final time and asked values
17 V_in = struct("time", (0:0.5:5000)', "values", rand(10001, 1));
18 scicos_simulate(scs_m, list());
19 assert_checkequal(V_in.time,   V_out_zero.time);
20 assert_checkequal(V_in.values, V_out_zero.values);
21 assert_checkequal(V_in.time,   V_out_hold.time);
22 assert_checkequal(V_in.values, V_out_hold.values);
23 assert_checkequal(V_in.time,   V_out_repeat.time);
24 assert_checkequal(V_in.values, V_out_repeat.values);
25
26 // V_in is shorter than simulation time
27 V_in = struct("time", (0:0.5:1000)', "values", rand(2001, 1));
28 scicos_simulate(scs_m, list());
29 assert_checkequal(V_in.time,   V_out_zero.time(1:2001));
30 assert_checkequal(V_in.values, V_out_zero.values(1:2001));
31 assert_checkequal(V_out_zero.values(2002:10001), zeros(10001 - 2002 + 1, 1));
32 assert_checkequal(V_in.time,   V_out_hold.time(1:2001));
33 assert_checkequal(V_in.values, V_out_hold.values(1:2001));
34 assert_checkequal(V_out_hold.values(2002:10001), ones(10001 - 2002 + 1, 1).*V_in.values($));
35 assert_checkequal(V_in.time,   V_out_repeat.time(1:2001));
36 assert_checkequal(V_in.values, V_out_repeat.values(1:2001));
37 //assert_checkequal(V_in.values, V_out_repeat.values(2002:4002));