27.07.2013 Views

2 Why We Need Model-Based Testing

2 Why We Need Model-Based Testing

2 Why We Need Model-Based Testing

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

76 <strong>Model</strong> Programs<br />

using N<strong>Model</strong>;<br />

using N<strong>Model</strong>.Attributes;<br />

using N<strong>Model</strong>.Execution;<br />

namespace ClientServer<br />

{<br />

public enum Socket { None, Created, Bound, Listening, Connecting,<br />

Connected, Disconnected, Closed }<br />

public enum Phase { Send, ServerReceive, ClientReceive }<br />

public static class ClientServer<br />

{<br />

const double EmptyBuffer = double.MaxValue;<br />

const double Temp2 = 99.9; // Temperature, 2 digits<br />

const double Temp3 = 100.0; // Temperature, 3 digits<br />

// Control state<br />

public static Socket serverSocket = Socket.None;<br />

public static Socket clientSocket = Socket.None;<br />

public static Phase phase = Phase.Send;<br />

// Data state<br />

public static double clientBuffer = EmptyBuffer;<br />

// Server enabling conditions and actions<br />

public static bool ServerSocketEnabled()<br />

{<br />

return (serverSocket == Socket.None);<br />

}<br />

[Action]<br />

public static void ServerSocket()<br />

{<br />

serverSocket = Socket.Created;<br />

}<br />

public static bool ServerBindEnabled()<br />

{<br />

return (serverSocket == Socket.Created);<br />

}<br />

[Action]<br />

public static void ServerBind()<br />

{<br />

serverSocket = Socket.Bound;<br />

}<br />

Figure 5.7. Remote instrument client/server: model program (part 1).<br />

more free ebooks download links at:<br />

http://www.ebook-x.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!