 	SECTION("Low Fidelity check_for_neuron_spikes Kernel Check") {
 		// Setting up the Spiking Neurons
 		// No high fidelity
+		test_neurons.set_threads_per_block_and_blocks_per_grid(512);
 		test_neurons.allocate_device_pointers(0, false);
 		// Selecting some indices to set to fire
 		int indices[3];

		CudaSafeCall(cudaMemcpy(test_neurons.d_current_injections, current_injection, sizeof(float)*test_neurons.total_number_of_neurons, cudaMemcpyHostToDevice));
		
		// Running update of state u
		cast_test_neurons->check_for_neuron_spikes(current_time, current_time);
	
		SECTION("Checking State U spike reset"){
			float* state_u;
			state_u = (float*)malloc(sizeof(float)*test_neurons.total_number_of_neurons);
			CudaSafeCall(cudaMemcpy(state_u, test_neurons.d_states_u, sizeof(float)*test_neurons.total_number_of_neurons, cudaMemcpyDeviceToHost));
			// Check the resulting state values
			CudaSafeCall(cudaMemcpy(state_u, test_neurons.d_states_u, sizeof(float)*test_neurons.total_number_of_neurons, cudaMemcpyDeviceToHost));
			for (int i=0; i < test_neurons.total_number_of_neurons; i++){

	}

	SECTION("Low Fidelity check_for_neuron_spikes Kernel Check") {
		InputSpikingNeurons* cast_test_neurons = &test_neurons;
		cast_test_neurons->allocate_device_pointers(0, false);
		cast_test_neurons->set_threads_per_block_and_blocks_per_grid(512);

		for (int s=0; s < num_spikes; s++){		
			float current_time = spike_times[s];
