def test_grayscale_movie(): t_values = np.arange(20) * .1 row_values = np.arange(5) col_values = np.arange(10) data_values = np.empty((20, 5, 10)) f = nwb.create_blank_file(close=False, force=True) t_scale = nwb.Scale(t_values, 'time', 'second') row_scale = nwb.Scale(row_values, 'distance', 'pixel') col_scale = nwb.Scale(col_values, 'distance', 'pixel') data = nwb.GrayScaleMovie(data_values, scale=(t_scale, row_scale, col_scale), metadata={'foo': 5}) data.add_to_stimulus(f) data.add_to_acquisition(f) data.add_to_processing(f, 'step_0') data.add_to_analysis(f, 'step_0') round_trip = nwb.GrayScaleMovie.get_stimulus(f, 0) np.testing.assert_almost_equal(round_trip.data[:], data.data[:], 12) round_trip = nwb.GrayScaleMovie.get_acquisition(f, 0) np.testing.assert_almost_equal(round_trip.data[:], data.data[:], 12) round_trip = nwb.GrayScaleMovie.get_processing(f, 'step_0', 0) np.testing.assert_almost_equal(round_trip.data[:], data.data[:], 12) round_trip = nwb.GrayScaleMovie.get_analysis(f, 'step_0', 0) np.testing.assert_almost_equal(round_trip.data[:], data.data[:], 12) f.close()
def test_external_link(): data_original = np.zeros(10) f = nwb.create_blank_file(force=True) scale = nwb.Scale(np.zeros(10), 'time', 'second') nwb.TimeSeries(data_original, scale=scale, dimension='voltage', unit='volt', metadata={ 'foo': 1 }).add_to_acquisition(f) temp_file_name = f.filename f.close() f = h5py.File(temp_file_name, 'r') f2 = nwb.create_blank_file(force=True) data = nwb.TimeSeries.get_acquisition(f, 0) data.add_to_acquisition(f2) f.close() temp_file_name_2 = f2.filename f2.close() f = h5py.File(temp_file_name_2) data = nwb.TimeSeries.get_acquisition(f, 0) np.testing.assert_almost_equal(data.data, data_original) assert data.data.file.filename == temp_file_name f.close() os.remove(temp_file_name) os.remove(temp_file_name_2)
def test_analysis(): t_values = np.arange(10) y_values = 10 * np.ones(10) f = nwb.create_blank_file(close=False) scale = nwb.Scale(t_values, 'time', 'second') data = nwb.FiringRate(y_values, scale=scale) data.add_to_analysis(f, 'step_0') scale = nwb.Scale(t_values, 'time', 'second') data = nwb.FiringRate(y_values, scale=scale) data.add_to_analysis(f, 'step_0') scale = nwb.Scale(t_values, 'time', 'second') data = nwb.FiringRate(y_values, scale=scale) data.add_to_analysis(f, 'step_1') file_name = f.filename f.close() os.remove(file_name)
def test_spike_train(): t_values = np.arange(5) * .1 y_values = np.array([0, 1, 2, 2, 1]) f = nwb.create_blank_file(close=False, force=True) scale = nwb.Scale(t_values, 'time', 'second') data = nwb.SpikeTrain(y_values, scale=scale) data.add_to_stimulus(f) data.add_to_acquisition(f) data.add_to_processing(f, 'step_0') data.add_to_analysis(f, 'step_0') round_trip = nwb.SpikeTrain.get_stimulus(f, 0) assert round_trip == data file_name = f.filename f.close() os.remove(file_name)
def test_firing_rate(): t_values = np.arange(10) y_values = 10 * np.ones(10) f = nwb.create_blank_file(close=False, force=True) scale = nwb.Scale(t_values, 'time', 'second') data = nwb.FiringRate(y_values, scale=scale) data.add_to_stimulus(f) data.add_to_acquisition(f) data.add_to_processing(f, 'step_0') data.add_to_analysis(f, 'step_0') round_trip = nwb.FiringRate.get_stimulus(f, 0) assert round_trip == data file_name = f.filename f.close() os.remove(file_name)
def test_add_shared_scale(): f = nwb.create_blank_file(close=False, force=True) t_values = np.arange(10) shared_scale = nwb.Scale(t_values, 'time', 'second') data_0 = nwb.FiringRate(10 * np.ones(10), scale=shared_scale) data_0.add_to_stimulus(f) data_1 = nwb.FiringRate(20 * np.ones(10), scale=shared_scale) data_1.add_to_stimulus(f) round_trip_0 = nwb.FiringRate.get_stimulus(f, 0) assert data_0 == round_trip_0 round_trip_1 = nwb.FiringRate.get_stimulus(f, 1) assert data_1 == round_trip_1 rt0, rt1 = nwb.FiringRate.get_stimulus(f) assert data_0 == rt0 assert data_1 == rt1 file_name = f.filename f.close() os.remove(file_name)