diff --git a/test/controllers/orders_controller_test.rb b/test/controllers/orders_controller_test.rb
index ca9705225f30bb92ea773f1724d3a17a5bdba559..350d137925f24238ec0a6ac4e7d1829b7227a2b4 100644
--- a/test/controllers/orders_controller_test.rb
+++ b/test/controllers/orders_controller_test.rb
@@ -1,12 +1,33 @@
 require 'test_helper'
-#TODO: write controller tests for orders
 class OrdersControllerTest < ActionDispatch::IntegrationTest
-  test "should show an order" do
-
+  test 'Should show a specific order when logged in' do
+    sign_in_as_tester
+    get order_url(orders(:one))
+    assert_response(:success)
+    assert_select 'body.orders' do
+      assert_select 'img', 2 #Order 1 has 2 order entries, each will have a row in the table with their image in a cell
+    end
   end
-
-  test "should create an order" do
-
+  test 'should not show an order when not logged in' do
+    get order_url(orders(:one))
+    assert_response(:redirect)
+    assert_redirected_to(login_url)
+    assert_equal 'Login to view this content', flash[:danger]
+  end
+  test 'should create an order' do
+    sign_in_as_tester
+    assert_difference('Order.count', +1) do
+      post orders_url, params: {order: {totalCost: 100, Email: "alternateBillEmail@testfix.com", user:users(:one)}}
+    end
+    assert_response(:redirect)
+    assert_equal 'Order has been placed', flash[:notice]
+  end
+  test 'should not create an order when not logged in' do
+    assert_no_difference('Order.count') do
+      post orders_url, params: {order: {totalCost: 100, Email: "alternateBillEmail@testfix.com", user:users(:one)}}
+    end
+    assert_response(:redirect)
+    assert_redirected_to(login_url)
+    assert_equal 'Login to view this content', flash[:danger]
   end
-
 end