require "selenium-webdriver"
require "rspec"
require 'rspec/expectations'
describe "Current Expense" do
before(:all) do
@driver = Selenium::WebDriver.for :firefox
@driver.manage.window.maximize
end
after(:all) do
@driver.quit
end
it "Login in the system" do
@driver.get(@base_url)
@driver.find_element(:id, "user_password").send_keys "123456"
@driver.find_element(:name, "commit").click
@driver.find_element(:xpath, "//*[@href='/expenses/current']").click
wait = Selenium::WebDriver::Wait.new(:timeout => 5)
wait.until {@driver.find_element(:id => "expense_merchant")}
end
it "Remove and add new expense" do
begin
while(@driver.find_element(:xpath, "//*[@class='i i-trashcan icon']").displayed?)
@driver.find_element(:xpath, "//*[@class='i i-trashcan icon']").click
sleep 2
@driver.find_element(:xpath, "//*[@class='btn btn-primary']").click
end
rescue Selenium::WebDriver::Error::NoSuchElementError
@driver.find_element(:id, "expense_merchant").send_keys "Taxi to work"
@driver.find_element(:id, "expense_amount").send_keys "50"
@driver.find_element(:xpath, "//*[@type='submit']").click
sleep 3
end
end
end