Advertisement
Guest User

Untitled

a guest
Jul 21st, 2017
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Erlang 1.21 KB | None | 0 0
  1. -module(test).
  2. -export([setup/1, test/1]).
  3.  
  4. setup(ModName) ->
  5.     ModName:stop(),
  6.     ModName:start().
  7.  
  8. test(Number) ->
  9.     Testfile = file:consult("testdata.dat"),
  10.     TestList = element(2,Testfile),
  11.     {TestData,ExpectedAnswer} = getDocs(TestList, [],[]),
  12.     %Only takes the first document, need to redo later
  13.     io:format("File read~n"),
  14.     spawnLoop(Number,TestData,ExpectedAnswer).
  15.  
  16. spawnLoop(Number,TestData,ExpectedAnswer) when Number > 0->
  17.     spawn(client,request,[self(),TestData]),
  18.     NewNumber = Number-1,
  19.     if
  20.         NewNumber > 0 ->
  21.             spawnLoop(NewNumber,TestData,ExpectedAnswer);
  22.         NewNumber == 0 ->
  23.             receive
  24.                 {ok, Result} ->
  25.                     io:format("Hey, I'm done!!~nAnd everything matches: "),
  26.                     io:format(ExpectedAnswer == Result),
  27.                     io:format("~n")
  28.         %           {ok, Writer} = file:open("output.txt",[read,write]),
  29.         %           {ok, Write} = file:open("expected.txt",[read,write]),
  30.         %           io:format(Writer,"~p~n",[Result]),
  31.         %           io:format(Write,"~p~n",[ExpectedAnswer]),
  32.         %           file:close(Writer),
  33.         %           file:close(Write)
  34.             end
  35.     end.
  36.  
  37. getDocs([],Answ,Docs) ->
  38.     {Docs,Answ};
  39. getDocs(Data,Answ,Docs) ->
  40.     [H|T] = Data,
  41.     NewDocs = Docs++[{doc, element(1,H)}],
  42.     NewAnsw = Answ++element(2,H),
  43.     getDocs(T,NewAnsw,NewDocs).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement