diff --git a/app/assets/stylesheets/profile.css.scss b/app/assets/stylesheets/profile.css.scss
index 1118857..6eab87e 100644
--- a/app/assets/stylesheets/profile.css.scss
+++ b/app/assets/stylesheets/profile.css.scss
@@ -9,7 +9,7 @@
text-align: center;
}
-.user_info h5 {
+.user_info h5 {
margin-right: 10px;
text-align: right;
}
@@ -37,7 +37,7 @@
cursor: pointer;
}
-.balance {
+.debt {
padding: 12px 0;
text-align: center;
font-family: monospace;
diff --git a/app/assets/stylesheets/users.css.scss b/app/assets/stylesheets/users.css.scss
index 17ae72c..76e5812 100644
--- a/app/assets/stylesheets/users.css.scss
+++ b/app/assets/stylesheets/users.css.scss
@@ -99,3 +99,7 @@ table {
color: #999;
}
}
+
+.product_dagschotel {
+ height: 34px;
+}
diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb
index b082c84..786d3f3 100644
--- a/app/controllers/users_controller.rb
+++ b/app/controllers/users_controller.rb
@@ -34,12 +34,18 @@ class UsersController < ApplicationController
def edit_dagschotel
@user = User.find(params[:user_id])
@dagschotel = @user.dagschotel
+
+ @products = Product.all
+ @categories = Product.categories
end
def update_dagschotel
@user = User.find(params[:user_id])
@user.dagschotel = Product.find(params[:product_id])
+ @products = Product.all
+ @categories = Product.categories
+
if @user.save
flash[:success] = "Succesfully updated dagschotel"
redirect_to @user
diff --git a/app/models/order.rb b/app/models/order.rb
index 4cec0a3..cf6a450 100644
--- a/app/models/order.rb
+++ b/app/models/order.rb
@@ -2,17 +2,18 @@
#
# Table name: orders
#
-# id :integer not null, primary key
-# user_id :integer
-# cost :integer
-# created_at :datetime not null
-# updated_at :datetime not null
+# id :integer not null, primary key
+# user_id :integer
+# price_cents :integer
+# created_at :datetime not null
+# updated_at :datetime not null
+# cancelled :boolean default("f")
#
class Order < ActiveRecord::Base
include ActionView::Helpers::TextHelper
- after_create { self.user.decrement!(:balance_cents, price_cents) }
+ after_create { self.user.increment!(:debt_cents, price_cents) }
belongs_to :user, counter_cache: true
has_many :order_items, dependent: :destroy
@@ -39,9 +40,10 @@ class Order < ActiveRecord::Base
def cancel
return if self.cancelled
- user.increment!(:balance_cents, price_cents)
+ user.decrement!(:debt_cents, price_cents)
User.decrement_counter(:orders_count, user.id)
update_attribute(:cancelled, true)
+ self.order_items.each(&:cancel)
end
def to_sentence
diff --git a/app/models/order_item.rb b/app/models/order_item.rb
index 3820fed..534e3da 100644
--- a/app/models/order_item.rb
+++ b/app/models/order_item.rb
@@ -3,9 +3,9 @@
# Table name: order_items
#
# id :integer not null, primary key
-# order_id :integer not null
+# order_id :integer
# product_id :integer not null
-# count :integer default(0)
+# count :integer default("0")
#
class OrderItem < ActiveRecord::Base
@@ -24,6 +24,10 @@ class OrderItem < ActiveRecord::Base
super
end
+ def cancel
+ self.product.increment!(:stock, self.count)
+ end
+
private
def remove_from_stock
diff --git a/app/models/product.rb b/app/models/product.rb
index 0fd4b29..2344d1c 100644
--- a/app/models/product.rb
+++ b/app/models/product.rb
@@ -3,16 +3,16 @@
# Table name: products
#
# id :integer not null, primary key
-# name :string(255) not null
-# price_cents :integer default(0), not null
-# category :integer default(0)
-# stock :integer default(0), not null
-# avatar_file_name :string(255)
-# avatar_content_type :string(255)
-# avatar_file_size :integer
-# avatar_updated_at :datetime
+# name :string not null
+# price_cents :integer default("0"), not null
# created_at :datetime
# updated_at :datetime
+# avatar_file_name :string
+# avatar_content_type :string
+# avatar_file_size :integer
+# avatar_updated_at :datetime
+# category :integer default("0")
+# stock :integer default("0"), not null
#
class Product < ActiveRecord::Base
diff --git a/app/models/user.rb b/app/models/user.rb
index 595ae6d..dfe0c9b 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -3,33 +3,35 @@
# Table name: users
#
# id :integer not null, primary key
-# name :string(255)
-# last_name :string(255)
-# balance_cents :integer default(0), not null
-# nickname :string(255)
-# admin :boolean
-# koelkast :boolean default(FALSE)
-# dagschotel_id :integer
-# orders_count :integer default(0)
-# avatar_file_name :string(255)
-# avatar_content_type :string(255)
-# avatar_file_size :integer
-# avatar_updated_at :datetime
+# name :string
+# last_name :string
+# debt_cents :integer default("0"), not null
+# nickname :string
# created_at :datetime
# updated_at :datetime
-# encrypted_password :string(255) default(""), not null
+# encrypted_password :string default(""), not null
# remember_created_at :datetime
-# sign_in_count :integer default(0), not null
+# sign_in_count :integer default("0"), not null
# current_sign_in_at :datetime
# last_sign_in_at :datetime
-# current_sign_in_ip :string(255)
-# last_sign_in_ip :string(255)
+# current_sign_in_ip :string
+# last_sign_in_ip :string
+# admin :boolean
+# dagschotel_id :integer
+# avatar_file_name :string
+# avatar_content_type :string
+# avatar_file_size :integer
+# avatar_updated_at :datetime
+# orders_count :integer default("0")
+# koelkast :boolean default("f")
+# provider :string
+# uid :string
#
class User < ActiveRecord::Base
devise :database_authenticatable, :registerable, :rememberable, :trackable, :validatable
- has_paper_trail only: [:balance, :admin, :orders_count, :koelkast]
+ has_paper_trail only: [:debt_cents, :admin, :orders_count, :koelkast]
has_attached_file :avatar, styles: { large: "150x150>", medium: "100x100>" }, default_style: :medium
@@ -50,13 +52,13 @@ class User < ActiveRecord::Base
"#{name} #{last_name}"
end
- def balance
- self.balance_cents / 100.0
+ def debt
+ self.debt_cents / 100.0
end
- def balance=(value)
+ def debt=(value)
if value.is_a? String then value.sub!(',', '.') end
- self.balance_cents = (value.to_f * 100).to_int
+ self.debt_cents = (value.to_f * 100).to_int
end
# Change URL params for User
diff --git a/app/views/admins/schulden.csv.erb b/app/views/admins/schulden.csv.erb
index 1c6f801..1400970 100644
--- a/app/views/admins/schulden.csv.erb
+++ b/app/views/admins/schulden.csv.erb
@@ -1,3 +1,3 @@
<%- headers = ['nickname', 'schulden'] -%>
<%= CSV.generate_line headers -%>
-<% @users.each do |user| %><%= CSV.generate_line([user.nickname, user.balance]) %><% end %>
+<% @users.each do |user| %><%= CSV.generate_line([user.nickname, user.debt]) %><% end %>
diff --git a/app/views/orders/new.html.erb b/app/views/orders/new.html.erb
index a139965..f26e959 100644
--- a/app/views/orders/new.html.erb
+++ b/app/views/orders/new.html.erb
@@ -1,4 +1,4 @@
-
Order for <%= @user.nickname %> (Huidige schuld: <%= euro(@user.balance) %>)
+Order for <%= @user.nickname %> (Huidige schuld: <%= euro(@user.debt) %>)
<%= f_form_for [@user, @order] do |f| %>
diff --git a/app/views/products/_index.html.erb b/app/views/products/_index.html.erb
new file mode 100644
index 0000000..ffc0525
--- /dev/null
+++ b/app/views/products/_index.html.erb
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+ <%= render @products %>
+
+ <% @categories.each do |o, i| %>
+
+ <%= render @products.where(category: i) %>
+
+ <% end %>
+
+
diff --git a/app/views/products/_product.html.erb b/app/views/products/_product.html.erb
index 0f74d29..87b021d 100644
--- a/app/views/products/_product.html.erb
+++ b/app/views/products/_product.html.erb
@@ -1,16 +1,28 @@
- <%= image_tag product.avatar %>
+
+ <%= image_tag product.avatar %>
+
<%= product.name %>
<%= euro(product.price) %>
(In stock: <%= product.stock %>)
- <% if current_user && current_user.admin? %>
+ <%- if controller_name == 'products' && current_user && current_user.admin? %>
<%= link_to "Edit", edit_product_path(product), class: "btn btn-default" %>
<%= link_to "Delete", product_path(product), method: :delete, class: "btn btn-danger", data: {confirm: 'Are you sure?'} %>
- <% end %>
+ <% end -%>
+
+ <%- if controller_name == 'users' %>
+
+ <% if current_user.dagschotel != product %>
+ <%= link_to "Make dagschotel", user_dagschotel_path(current_user, product), class: "btn btn-default" %>
+ <% else %>
+ <%= link_to "Huidige dagschotel", user_dagschotel_path(current_user, product), class: "btn btn-success", disabled: true %>
+ <% end %>
+
+ <% end -%>
diff --git a/app/views/products/index.html.erb b/app/views/products/index.html.erb
index c2cc583..016ee59 100644
--- a/app/views/products/index.html.erb
+++ b/app/views/products/index.html.erb
@@ -1,27 +1,3 @@
All products
<%= render partial: 'flash' %>
-
-
-
-
-
-
-
-
-
- <%= render @products %>
-
- <% @categories.each do |o, i| %>
-
- <%= render @products.where(category: i) %>
-
- <% end %>
-
-
-
-
+<%= render 'products/index' %>
diff --git a/app/views/users/_user.html.erb b/app/views/users/_user.html.erb
index ccb4054..91be69c 100644
--- a/app/views/users/_user.html.erb
+++ b/app/views/users/_user.html.erb
@@ -6,7 +6,7 @@
Name: <%= user.name %>
Last name: <%= user.last_name %>
Nickname: <%= user.nickname %>
-
Balance: <%= euro(user.balance) %>
+
Debt: <%= euro(user.debt) %>
<% if current_user.admin? %>
<% if @orders.any? %>
diff --git a/db/migrate/20150319141248_change_balance_to_debt.rb b/db/migrate/20150319141248_change_balance_to_debt.rb
new file mode 100644
index 0000000..409d319
--- /dev/null
+++ b/db/migrate/20150319141248_change_balance_to_debt.rb
@@ -0,0 +1,5 @@
+class ChangeBalanceToDebt < ActiveRecord::Migration
+ def change
+ rename_column :users, :balance_cents, :debt_cents
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 4462642..7d91f6a 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -11,7 +11,7 @@
#
# It's strongly recommended that you check this file into your version control system.
-ActiveRecord::Schema.define(version: 20150319134138) do
+ActiveRecord::Schema.define(version: 20150319141248) do
create_table "order_items", force: :cascade do |t|
t.integer "order_id"
@@ -46,7 +46,7 @@ ActiveRecord::Schema.define(version: 20150319134138) do
create_table "users", force: :cascade do |t|
t.string "name"
t.string "last_name"
- t.integer "balance_cents", default: 0, null: false
+ t.integer "debt_cents", default: 0, null: false
t.string "nickname"
t.datetime "created_at"
t.datetime "updated_at"
diff --git a/db/seeds.rb b/db/seeds.rb
index 28fc1d4..0a7b673 100644
--- a/db/seeds.rb
+++ b/db/seeds.rb
@@ -5,4 +5,76 @@
#
# cities = City.create([{ name: 'Chicago' }, { name: 'Copenhagen' }])
# Mayor.create(name: 'Emanuel', city: cities.first)
+DEFAULT_PASSWORD = "password"
+products = [
+ {
+ name: 'Fanta',
+ price: 0.6,
+ category: 'beverages',
+ stock: 25,
+ avatar: File.new('public/seeds/products/fanta.jpg', 'r')
+ },
+ {
+ name: 'Club Mate',
+ price: 1.2,
+ category: 'beverages',
+ stock: 25,
+ avatar: File.new('public/seeds/products/club_mate.jpg', 'r')
+ },
+ {
+ name: 'Kinder Bueno',
+ price: 0.6,
+ category: 'food',
+ stock: 15,
+ avatar: File.new('public/seeds/products/bueno.jpg', 'r')
+ }
+]
+
+products.each do |attr|
+ Product.create name: attr[:name], price: attr[:price], category: attr[:category], stock: attr[:stock], avatar: attr[:avatar]
+end
+
+users = [
+ {
+ nickname: 'admin',
+ name: 'A.',
+ last_name: 'Admin',
+ avatar: File.new('public/seeds/users/admin.jpg', 'r'),
+ admin: true
+ },
+ {
+ nickname: 'koelkast',
+ name: 'K.',
+ last_name: 'Koelkast',
+ avatar: File.new('public/seeds/users/admin.jpg', 'r'),
+ koelkast: true
+ },
+ {
+ nickname: 'benji',
+ name: 'Benjamin',
+ last_name: 'Cousaert',
+ avatar: File.new('public/seeds/users/benji.jpg', 'r'),
+ dagschotel: Product.first
+ },
+ {
+ nickname: 'don',
+ name: 'Lorin',
+ last_name: 'Werthen',
+ avatar: File.new('public/seeds/users/don.jpg', 'r')
+ },
+ {
+ nickname: 'silox',
+ name: 'Tom',
+ last_name: 'Naessens',
+ avatar: File.new('public/seeds/users/silox.jpg', 'r')
+ }
+]
+
+users.each do |attr|
+ User.create nickname: attr[:nickname], name: attr[:name], last_name: attr[:last_name], avatar: attr[:avatar], dagschotel: attr[:dagschotel], password: DEFAULT_PASSWORD, password_confirmation: DEFAULT_PASSWORD, admin: attr[:admin] || false, koelkast: attr[:koelkast] || false
+end
+
+50.times do |i|
+ User.create nickname: "TestUser#{i}", name: "Test", last_name: "User", avatar: users[0][:avatar], password: DEFAULT_PASSWORD, password_confirmation: DEFAULT_PASSWORD
+end
diff --git a/lib/tasks/db.rake b/lib/tasks/db.rake
deleted file mode 100644
index a62be4e..0000000
--- a/lib/tasks/db.rake
+++ /dev/null
@@ -1,79 +0,0 @@
-namespace :db do
- desc "Fill the database with some sample data."
- task generatedata: :environment do
- DEFAULT_PASSWORD = "password"
-
- products = [
- {
- name: 'Fanta',
- price: 0.6,
- category: 'beverages',
- stock: 25,
- avatar: File.new('public/seeds/products/fanta.jpg', 'r')
- },
- {
- name: 'Club Mate',
- price: 1.2,
- category: 'beverages',
- stock: 25,
- avatar: File.new('public/seeds/products/club_mate.jpg', 'r')
- },
- {
- name: 'Kinder Bueno',
- price: 0.6,
- category: 'food',
- stock: 15,
- avatar: File.new('public/seeds/products/bueno.jpg', 'r')
- }
- ]
-
- products.each do |attr|
- Product.create name: attr[:name], price: attr[:price], category: attr[:category], stock: attr[:stock], avatar: attr[:avatar]
- end
-
- users = [
- {
- nickname: 'admin',
- name: 'A.',
- last_name: 'Admin',
- avatar: File.new('public/seeds/users/admin.jpg', 'r'),
- admin: true
- },
- {
- nickname: 'koelkast',
- name: 'K.',
- last_name: 'Koelkast',
- avatar: File.new('public/seeds/users/admin.jpg', 'r'),
- koelkast: true
- },
- {
- nickname: 'benji',
- name: 'Benjamin',
- last_name: 'Cousaert',
- avatar: File.new('public/seeds/users/benji.jpg', 'r'),
- dagschotel: Product.first
- },
- {
- nickname: 'don',
- name: 'Lorin',
- last_name: 'Werthen',
- avatar: File.new('public/seeds/users/don.jpg', 'r')
- },
- {
- nickname: 'silox',
- name: 'Tom',
- last_name: 'Naessens',
- avatar: File.new('public/seeds/users/silox.jpg', 'r')
- }
- ]
-
- users.each do |attr|
- User.create nickname: attr[:nickname], name: attr[:name], last_name: attr[:last_name], avatar: attr[:avatar], dagschotel: attr[:dagschotel], password: DEFAULT_PASSWORD, password_confirmation: DEFAULT_PASSWORD, admin: attr[:admin] || false, koelkast: attr[:koelkast] || false
- end
-
- 50.times do |i|
- User.create nickname: "TestUser#{i}", name: "Test", last_name: "User", avatar: users[0][:avatar], password: DEFAULT_PASSWORD, password_confirmation: DEFAULT_PASSWORD
- end
- end
-
-end
diff --git a/test/fixtures/order_items.yml b/test/fixtures/order_items.yml
index 93ff95a..5236ccc 100644
--- a/test/fixtures/order_items.yml
+++ b/test/fixtures/order_items.yml
@@ -1,11 +1,11 @@
# == Schema Information
#
-# Table name: order_products
+# Table name: order_items
#
# id :integer not null, primary key
# order_id :integer
-# product_id :integer
-# count :integer default(1)
+# product_id :integer not null
+# count :integer default("0")
#
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
diff --git a/test/fixtures/orders.yml b/test/fixtures/orders.yml
index bbd0fdd..f000b4a 100644
--- a/test/fixtures/orders.yml
+++ b/test/fixtures/orders.yml
@@ -2,11 +2,12 @@
#
# Table name: orders
#
-# id :integer not null, primary key
-# user_id :integer
-# cost :integer
-# created_at :datetime not null
-# updated_at :datetime not null
+# id :integer not null, primary key
+# user_id :integer
+# price_cents :integer
+# created_at :datetime not null
+# updated_at :datetime not null
+# cancelled :boolean default("f")
#
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
diff --git a/test/fixtures/products.yml b/test/fixtures/products.yml
index 34ff39b..fc33fd8 100644
--- a/test/fixtures/products.yml
+++ b/test/fixtures/products.yml
@@ -3,16 +3,16 @@
# Table name: products
#
# id :integer not null, primary key
-# name :string(255) not null
-# price_cents :integer default(0), not null
-# category :integer default(0)
-# stock :integer default(0), not null
-# avatar_file_name :string(255)
-# avatar_content_type :string(255)
-# avatar_file_size :integer
-# avatar_updated_at :datetime
+# name :string not null
+# price_cents :integer default("0"), not null
# created_at :datetime
# updated_at :datetime
+# avatar_file_name :string
+# avatar_content_type :string
+# avatar_file_size :integer
+# avatar_updated_at :datetime
+# category :integer default("0")
+# stock :integer default("0"), not null
#
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
diff --git a/test/fixtures/users.yml b/test/fixtures/users.yml
index a03ce63..8aa90d9 100644
--- a/test/fixtures/users.yml
+++ b/test/fixtures/users.yml
@@ -3,27 +3,29 @@
# Table name: users
#
# id :integer not null, primary key
-# name :string(255)
-# last_name :string(255)
-# balance_cents :integer default(0), not null
-# nickname :string(255)
-# admin :boolean
-# koelkast :boolean default(FALSE)
-# dagschotel_id :integer
-# orders_count :integer default(0)
-# avatar_file_name :string(255)
-# avatar_content_type :string(255)
-# avatar_file_size :integer
-# avatar_updated_at :datetime
+# name :string
+# last_name :string
+# debt_cents :integer default("0"), not null
+# nickname :string
# created_at :datetime
# updated_at :datetime
-# encrypted_password :string(255) default(""), not null
+# encrypted_password :string default(""), not null
# remember_created_at :datetime
-# sign_in_count :integer default(0), not null
+# sign_in_count :integer default("0"), not null
# current_sign_in_at :datetime
# last_sign_in_at :datetime
-# current_sign_in_ip :string(255)
-# last_sign_in_ip :string(255)
+# current_sign_in_ip :string
+# last_sign_in_ip :string
+# admin :boolean
+# dagschotel_id :integer
+# avatar_file_name :string
+# avatar_content_type :string
+# avatar_file_size :integer
+# avatar_updated_at :datetime
+# orders_count :integer default("0")
+# koelkast :boolean default("f")
+# provider :string
+# uid :string
#
# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
diff --git a/test/integration/order_integration_test.rb b/test/integration/order_integration_test.rb
index f2efda5..0f9492c 100644
--- a/test/integration/order_integration_test.rb
+++ b/test/integration/order_integration_test.rb
@@ -15,14 +15,14 @@ class OrderIntegrationTest < ActionDispatch::IntegrationTest
assert page.has_content? 'Order for benji'
- assert_difference "User.find(users(:benji).id).balance_cents", -240 do
+ assert_difference "User.find(users(:benji).id).debt_cents", 240 do
fill_in 'order_order_items_attributes_2_count', with: 2
click_button "Order!"
end
end
test 'quickpay' do
- assert_difference "User.find(users(:benji).id).balance_cents", -User.find(users(:benji).id).dagschotel.price_cents do
+ assert_difference "User.find(users(:benji).id).debt_cents", User.find(users(:benji).id).dagschotel.price_cents do
visit user_quickpay_path(users(:benji))
assert page.has_content? 'Success!'
end
@@ -31,7 +31,7 @@ class OrderIntegrationTest < ActionDispatch::IntegrationTest
test 'cancelling quickpay' do
visit user_quickpay_path(users(:benji))
- assert_difference "User.find(users(:benji).id).balance_cents", User.find(users(:benji).id).dagschotel.price_cents do
+ assert_difference "User.find(users(:benji).id).debt_cents", -User.find(users(:benji).id).dagschotel.price_cents do
click_link 'Undo'
assert page.has_content? 'Success!'
end
diff --git a/test/integration/stock_test.rb b/test/integration/stock_test.rb
index bfdc6df..970e0ab 100644
--- a/test/integration/stock_test.rb
+++ b/test/integration/stock_test.rb
@@ -10,7 +10,7 @@ class StockTest < ActiveSupport::TestCase
end
assert_difference "products(:fanta).stock", +2 do
- order.destroy
+ order.cancel
end
end
end
diff --git a/test/models/order_test.rb b/test/models/order_test.rb
index ef55eff..16f6ae3 100644
--- a/test/models/order_test.rb
+++ b/test/models/order_test.rb
@@ -2,11 +2,12 @@
#
# Table name: orders
#
-# id :integer not null, primary key
-# user_id :integer
-# cost :integer
-# created_at :datetime not null
-# updated_at :datetime not null
+# id :integer not null, primary key
+# user_id :integer
+# price_cents :integer
+# created_at :datetime not null
+# updated_at :datetime not null
+# cancelled :boolean default("f")
#
require 'test_helper'
@@ -19,7 +20,7 @@ class OrderTest < ActiveSupport::TestCase
end
test "order total price is correct" do
- assert_equal @order.price, 300
+ assert_equal @order.price, 3.00
end
test "to_sentence is correct" do
diff --git a/test/models/product_test.rb b/test/models/product_test.rb
index 51e08b0..d5e391f 100644
--- a/test/models/product_test.rb
+++ b/test/models/product_test.rb
@@ -3,16 +3,16 @@
# Table name: products
#
# id :integer not null, primary key
-# name :string(255) not null
-# price_cents :integer default(0), not null
-# category :integer default(0)
-# stock :integer default(0), not null
-# avatar_file_name :string(255)
-# avatar_content_type :string(255)
-# avatar_file_size :integer
-# avatar_updated_at :datetime
+# name :string not null
+# price_cents :integer default("0"), not null
# created_at :datetime
# updated_at :datetime
+# avatar_file_name :string
+# avatar_content_type :string
+# avatar_file_size :integer
+# avatar_updated_at :datetime
+# category :integer default("0")
+# stock :integer default("0"), not null
#
require 'test_helper'
diff --git a/test/models/user_test.rb b/test/models/user_test.rb
index 25c63b8..b3bad39 100644
--- a/test/models/user_test.rb
+++ b/test/models/user_test.rb
@@ -3,27 +3,29 @@
# Table name: users
#
# id :integer not null, primary key
-# name :string(255)
-# last_name :string(255)
-# balance_cents :integer default(0), not null
-# nickname :string(255)
-# admin :boolean
-# koelkast :boolean default(FALSE)
-# dagschotel_id :integer
-# orders_count :integer default(0)
-# avatar_file_name :string(255)
-# avatar_content_type :string(255)
-# avatar_file_size :integer
-# avatar_updated_at :datetime
+# name :string
+# last_name :string
+# debt_cents :integer default("0"), not null
+# nickname :string
# created_at :datetime
# updated_at :datetime
-# encrypted_password :string(255) default(""), not null
+# encrypted_password :string default(""), not null
# remember_created_at :datetime
-# sign_in_count :integer default(0), not null
+# sign_in_count :integer default("0"), not null
# current_sign_in_at :datetime
# last_sign_in_at :datetime
-# current_sign_in_ip :string(255)
-# last_sign_in_ip :string(255)
+# current_sign_in_ip :string
+# last_sign_in_ip :string
+# admin :boolean
+# dagschotel_id :integer
+# avatar_file_name :string
+# avatar_content_type :string
+# avatar_file_size :integer
+# avatar_updated_at :datetime
+# orders_count :integer default("0")
+# koelkast :boolean default("f")
+# provider :string
+# uid :string
#
require 'test_helper'
@@ -37,14 +39,14 @@ class UserTest < ActiveSupport::TestCase
assert_equal @user.full_name, "Benjamin Cousaert"
end
- test "balance behaves correctly" do
- assert_equal @user.balance_cents, 0
- assert_equal @user.balance, 0
+ test "debt behaves correctly" do
+ assert_equal @user.debt_cents, 0
+ assert_equal @user.debt, 0
- @user.balance = 1.3
+ @user.debt = 1.3
- assert_equal @user.balance, 1.3
- assert_equal @user.balance_cents, 130
+ assert_equal @user.debt, 1.3
+ assert_equal @user.debt_cents, 130
end
test "to_param" do