logic_mappings_controller_spec.rb revision 23305f217b86a2ebf90a848af9036908e0070542
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksarequire 'spec_helper'
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksadescribe LogicMappingsController do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa let!(:user) { FactoryGirl.create :user }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa let!(:target_logic) { FactoryGirl.create :logic, user: user }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa let!(:source_logic) { FactoryGirl.create :logic, user: user }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa let!(:mapping) do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa FactoryGirl.create :logic_mapping,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa source: source_logic, target: target_logic, user: user
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'signed in as owner' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa before { sign_in user }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on get to show' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { get :show, id: mapping.id, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should respond_with :success }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should render_template :show }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should_not set_the_flash }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on get to new' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { get :new, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should respond_with :success }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should render_template :new }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on POST to CREATE' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa before do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa post :create, logic_id: source_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa logic_mapping: {
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa source_id: source_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa target_id: target_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa iri: 'http://test.de'
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'create the record' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa let!(:mapping_from_db) { LogicMapping.find_by_iri('http://test.de') }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'should exist' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(mapping_from_db).not_to be_nil
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'should have correct source' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(mapping_from_db.source).to eq(source_logic)
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'should have correct target' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(mapping_from_db.target).to eq(target_logic)
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on PUT to Update' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa before do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa put :update, logic_id: source_logic.id, id: mapping.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa logic_mapping: {
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa source_id: source_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa target_id: target_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa iri: 'http://test2.de'
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'change the record' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa let!(:mapping_from_db) { LogicMapping.find_by_iri('http://test2.de') }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'should exist' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(mapping_from_db).not_to be_nil
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'should have correct source' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(mapping_from_db.source).to eq(source_logic)
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'should have correct target' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(mapping_from_db.target).to eq(target_logic)
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on POST to DELETE' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { delete :destroy, id: mapping.id, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'remove the record' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(LogicMapping.find_by_id(mapping.id)).to be_nil
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on GET to EDIT' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { get :edit, id: mapping.id, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should respond_with :success }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should render_template :edit }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should_not set_the_flash }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'signed in as not-owner' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa let!(:user2) { FactoryGirl.create :user }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa before { sign_in user2 }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on get to show' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { get :show, id: mapping.id, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should respond_with :success }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should render_template :show }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should_not set_the_flash }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on get to new' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { get :new, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should respond_with :success }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should render_template :new }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on POST to CREATE' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa before do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa post :create, logic_id: source_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa logic_mapping: {
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa source_id: source_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa target_id: target_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa iri: 'http://test.de'
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'create the record' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa let!(:mapping_from_db) { LogicMapping.find_by_iri('http://test.de') }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'should exist' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(mapping_from_db).not_to be_nil
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'should have correct source' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(mapping_from_db.source).to eq(source_logic)
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'should have correct target' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(mapping_from_db.target).to eq(target_logic)
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on PUT to Update' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa before do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa put :update, logic_id: source_logic.id, id: mapping.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa logic_mapping: {
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa source_id: source_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa target_id: target_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa iri: 'http://test2.de'
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'not change the record' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(LogicMapping.find_by_iri('http://test2.de')).to be_nil
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on POST to DELETE' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { delete :destroy, id: mapping.id, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'not remove the record' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(LogicMapping.find_by_id(mapping.id)).to eq(mapping)
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on GET to EDIT' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { get :edit, id: mapping.id, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should respond_with :redirect }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should set_the_flash.to(/not authorized/i) }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'not signed in' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on get to show' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { get :show, id: mapping.id, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should respond_with :success }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should render_template :show }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should_not set_the_flash }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on get to new' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { get :new, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should respond_with :redirect }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it { should set_the_flash }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on POST to CREATE' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa before do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa post :create, logic_id: source_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa logic_mapping: {
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa source_id: source_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa target_id: target_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa iri: 'http://test.de'
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'not create the record' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(LogicMapping.find_by_iri('http://test.de')).to be_nil
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on PUT to Update' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa before do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa put :update, logic_id: source_logic.id, id: mapping.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa logic_mapping: {
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa source_id: source_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa target_id: target_logic.id,
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa iri: 'http://test2.de'
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'not change the record' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(LogicMapping.find_by_iri('http://test2.de')).to be_nil
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa context 'on POST to DELETE' do
23305f217b86a2ebf90a848af9036908e0070542Eugen Kuksa before { delete :destroy, id: mapping.id, logic_id: source_logic.id }
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa it 'not remove the record' do
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa expect(LogicMapping.find_by_id(mapping.id)).to eq(mapping)
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksa end
9721f58c0c6959fae3a048672ad4eacc6a1123e7Eugen Kuksaend