spec/collection_spec.rb in rasti-db-2.3.3 vs spec/collection_spec.rb in rasti-db-3.0.0

- old
+ new

@@ -50,11 +50,11 @@ end it 'Insert with many to many' do user_id = db[:users].insert name: 'User 1' - 1.upto(2) do |i| + 1.upto(2) do |i| db[:posts].insert user_id: user_id, title: "Post #{i}", body: '...', language_id: 1 db[:categories].insert name: "Category #{i}" end post_id = posts.insert user_id: user_id, title: 'Post title', body: '...', categories: [1,2], language_id: 1 @@ -63,11 +63,11 @@ db[:categories_posts].where(post_id: post_id).map(:category_id).must_equal [1,2] db[:categories_posts].where(category_id: category_id).map(:post_id).must_equal [1,2] end it 'Insert only many to many' do - 1.upto(3) do |i| + 1.upto(3) do |i| db[:categories].insert name: "Category #{i}" end user_id = db[:users].insert name: 'User 1' post_id = db[:posts].insert user_id: user_id, title: 'Post title', body: '...', language_id: 1 @@ -99,11 +99,11 @@ end it 'Update with many to many' do user_id = db[:users].insert name: 'User 1' - 1.upto(3) do |i| + 1.upto(3) do |i| db[:posts].insert user_id: user_id, title: "Post #{i}", body: '...', language_id: 1 db[:categories].insert name: "Category #{i}" end db[:categories_posts].insert post_id: 1, category_id: 1 @@ -113,15 +113,15 @@ db[:categories_posts].where(post_id: 1).map(:category_id).must_equal [1,2] posts.update 1, categories: [2,3] db[:categories_posts].where(post_id: 1).map(:category_id).must_equal [2,3] - + db[:categories_posts].where(category_id: 2).map(:post_id).must_equal [1,2] categories.update 2, posts: [2,3] - + db[:categories_posts].where(category_id: 2).map(:post_id).must_equal [2,3] end it 'Bulk update' do user_id = db[:users].insert name: 'User 1' @@ -143,11 +143,11 @@ db[:users].count.must_equal 0 end it 'Delete only many to many' do - 1.upto(3) do |i| + 1.upto(3) do |i| db[:categories].insert name: "Category #{i}" end user_id = db[:users].insert name: 'User 1' post_id = db[:posts].insert user_id: user_id, title: 'Post title', body: '...', language_id: 1 @@ -170,18 +170,18 @@ before :each do 1.upto(3) do |i| user_id = db[:users].insert name: "User #{i}" - db[:people].insert document_number: "document_#{i}", + db[:people].insert document_number: "document_#{i}", first_name: "John #{i}", last_name: "Doe #{i}", birth_date: Time.now - i, user_id: user_id - category_id = db[:categories].insert name: "Category #{i}" - + category_id = db[:categories].insert name: "Category #{i}" + 1.upto(3) do |n| post_id = db[:posts].insert user_id: user_id, title: "Post #{i}.#{n}", body: '...', language_id: 1 db[:categories_posts].insert post_id: post_id, category_id: category_id end end @@ -225,11 +225,11 @@ db[:people].where(user_id: 1).count.must_equal 0 db[:comments].where(user_id: 1).count.must_equal 0 db[:posts].where(user_id: 1).count.must_equal 0 db[:comments].join(:posts, id: :post_id).where(Sequel[:posts][:user_id] => 1).count.must_equal 0 db[:categories_posts].join(:posts, id: :post_id).where(Sequel[:posts][:user_id] => 1).count.must_equal 0 - + db[:users].count.must_equal 2 db[:people].count.must_equal 2 db[:categories].count.must_equal 3 db[:posts].count.must_equal 6 db[:categories_posts].count.must_equal 6 @@ -239,13 +239,13 @@ end describe 'Multiple data sources' do before do - 1.upto(3) do |i| + 1.upto(3) do |i| db[:users].insert name: "User #{i}" - db[:people].insert document_number: "document_#{i}", + db[:people].insert document_number: "document_#{i}", first_name: "John #{i}", last_name: "Doe #{i}", birth_date: Time.now - i, user_id: i end @@ -301,11 +301,11 @@ describe 'Queries' do it 'Find' do id = db[:users].insert name: 'User 1' - + users.find(id).must_equal User.new(id: id, name: 'User 1') end it 'Find graph' do user_id = db[:users].insert name: 'User 1' @@ -408,30 +408,30 @@ custom_db[:languages].insert name: 'Spanish' custom_db[:languages].insert name: 'English' 1.upto(2) do |i| db[:categories].insert name: "Category #{i}" - + db[:users].insert name: "User #{i}" - - db[:people].insert document_number: "document_#{i}", + + db[:people].insert document_number: "document_#{i}", first_name: "John #{i}", last_name: "Doe #{i}", birth_date: Time.now - i, user_id: i - + end db[:languages_people].insert language_id: 1, document_number: 'document_1' db[:languages_people].insert language_id: 2, document_number: 'document_2' - 1.upto(3) do |i| + 1.upto(3) do |i| db[:posts].insert user_id: 1, title: "Post #{i}", body: '...', language_id: 1 db[:categories_posts].insert category_id: 1, post_id: i end - - 4.upto(5) do |i| + + 4.upto(5) do |i| db[:posts].insert user_id: 2, title: "Post #{i}", body: '...', language_id: 2 db[:categories_posts].insert category_id: 2, post_id: i end end @@ -473,11 +473,11 @@ end it 'Global' do result_1 = posts.created_by(1) result_1.primary_keys.must_equal [1,2,3] - + result_2 = posts.created_by(2) result_2.primary_keys.must_equal [4,5] end it 'Chained' do @@ -488,11 +488,11 @@ end it 'Graph' do 1.upto(3) do |i| db[:users].insert name: "User #{i}" - db[:people].insert document_number: "document_#{i}", + db[:people].insert document_number: "document_#{i}", first_name: "John #{i}", last_name: "Doe #{i}", birth_date: Time.now - i, user_id: i db[:categories].insert name: "Category #{i}" @@ -519,14 +519,14 @@ posts_graph[0].comments.each_with_index do |comment, index| i = index + 1 comment.post_id.must_equal 1 comment.user_id.must_equal i - + comment.user.id.must_equal i comment.user.name.must_equal "User #{i}" - + comment.user.posts.count.must_equal 1 comment.user.posts[0].id.must_equal i comment.user.posts[0].title.must_equal "Post #{i}" comment.user.posts[0].user_id.must_equal i @@ -542,11 +542,11 @@ let :stub_db do stubs = Proc.new do |sql| case sql - when 'SELECT users.* FROM schema_1.users', + when 'SELECT users.* FROM schema_1.users', 'SELECT users.* FROM schema_1.users WHERE (users.id IN (2, 1))' [ {id: 1}, {id: 2} ] @@ -586,11 +586,11 @@ end Sequel.mock fetch: stubs, autoid: autoid end - let :stub_environment do + let :stub_environment do Rasti::DB::Environment.new default: Rasti::DB::DataSource.new(stub_db, :schema_1), custom: Rasti::DB::DataSource.new(stub_db, :schema_2) end let(:stub_users) { Users.new stub_environment } @@ -625,11 +625,11 @@ it 'Insert in multiple schemas' do stub_languages.insert name: 'Spanish' stub_users.insert name: 'User 1' - stub_people.insert document_number: 'document_1', + stub_people.insert document_number: 'document_1', first_name: 'John', last_name: 'Doe', birth_date: Time.parse('2020-04-24'), user_id: 1, languages: [1] @@ -678,10 +678,10 @@ it 'Graph' do stub_posts.graph(:user, :categories, 'comments.user.posts.categories', 'language.people').all stub_db.sqls.must_equal [ 'SELECT posts.* FROM schema_1.posts', - 'SELECT categories.*, categories_posts.post_id AS source_foreign_key FROM schema_1.categories INNER JOIN schema_1.categories_posts ON (schema_1.categories_posts.category_id = schema_1.categories.id) WHERE (categories_posts.post_id IN (3, 4))', + 'SELECT categories.*, categories_posts.post_id AS source_foreign_key FROM schema_1.categories INNER JOIN schema_1.categories_posts ON (schema_1.categories_posts.category_id = schema_1.categories.id) WHERE (categories_posts.post_id IN (3, 4))', 'SELECT comments.* FROM schema_1.comments WHERE (comments.post_id IN (3, 4))', 'SELECT users.* FROM schema_1.users WHERE (users.id IN (2, 1))', 'SELECT posts.* FROM schema_1.posts WHERE (posts.user_id IN (1, 2))', 'SELECT categories.*, categories_posts.post_id AS source_foreign_key FROM schema_1.categories INNER JOIN schema_1.categories_posts ON (schema_1.categories_posts.category_id = schema_1.categories.id) WHERE (categories_posts.post_id IN (3, 4))', 'SELECT languages.* FROM schema_2.languages WHERE (languages.id IN (1, 2))', \ No newline at end of file