diff --git a/src/connection_test.f08 b/src/connection_test.f08 index 3fc77cd80958480e2e2230f163f0dc02d1a8da48..16883f5fa8bb655c4fc2f85f717edcec2da31325 100644 --- a/src/connection_test.f08 +++ b/src/connection_test.f08 @@ -1,4 +1,4 @@ -program a +program connection_test use connection_m use neuron_dummy_m @@ -11,23 +11,76 @@ program a type(interval_connection_t), pointer :: con - n1 = neuron_t(21) - n2 = neuron_t(13) + print *, '+---------------------------------------------+' + print *, '| STARTING TESTING OF THE MODULE CONNECTION_M |' + print *, '+---------------------------------------------+' + print *, 'Creating instances of the class neuron_t...' + n1 = neuron_t(21.3) + n2 = neuron_t(13.7) + print *, 'neuron_t instances were created successfully.' + + print *, 'Assigning instances to pointer...' n1_p => n1 n2_p => n2 + print *, 'Assignment was successful.' + + print *, 'Creating an instance of the class interval_connection_t...' + con => interval_connection_t(n1_p, n2_p, 5.25) + print *, 'The instance of the class interval_connection_t was created successfully.' - con => interval_connection_t(n1_p, n2_p, 5.0) + print *, 'Testing get_weight() method...' + if(con%get_weight() == 5.25) then + print *, 'Test of get_weight() was successfull.' + else + print *, 'ERROR testing method get_weight()!' + stop -1 + end if - print *, 'weight: ', con%get_weight() + print *, 'Testing adjust_weight() method...' + call con%adjust_weight(1.0) + if(con%get_weight() == 6.25) then + print *, 'Test of adjust_weight() was successful.' + else + print *, 'ERROR testing method adjust_weight()!' + stop -1 + end if + print *, 'Assigning input neuron to a pointer using get_input_neuron()...' dummy_p => con%get_input_neuron() - print *, dummy_p%get_state() + print *, 'Assignment was successful.' + + print *, 'Testing method get_state() on the input neuron...' + if(dummy_p%get_state() == 21.3) then + print *, 'Test was successful.' + else + print *, 'ERROR using method get_state() on the input neuron!' + stop -1 + end if + + print *, 'Assigning output neuron to a pointer using get_output_neuron()...' dummy_p => con%get_output_neuron() - print *, dummy_p%get_state() + print *, 'Assignment was successful.' - call con%pass_signal() + print *, 'Testing method get_state() on the output neuron...' + if(dummy_p%get_state() == 13.7) then + print *, 'Test was successful.' + else + print *, 'ERROR using method get_state() on the output neuron!' + stop -1 + end if - print *, dummy_p%get_state() + print *, 'Assigning the value input*weight to the output neuron using method pass_signal()...' + call con%pass_signal() + print *, 'Retrieving state of the output neuron and testing the value...' + if(dummy_p%get_state() == 133.125) then + print *, 'Test was successful.' + else + print *, 'ERROR using method pass_signal()!' + stop -1 + end if -end program a + print *, '+-------------------------------------------------------------+' + print *, '| ALL TESTS OF THE MODULE CONNECTION_M WERE RUN SUCCESSFULLY. |' + print *, '+-------------------------------------------------------------+' +end program connection_test