diff --git a/lib/pork/context.rb b/lib/pork/context.rb
index <HASH>..<HASH> 100644
--- a/lib/pork/context.rb
+++ b/lib/pork/context.rb
@@ -1,12 +1,18 @@
 
+require 'pork/expect'
 require 'pork/error'
 
 module Pork
   module Context
+    private
     def initialize desc
       @__pork__desc__ = desc
     end
 
+    def expect *args, &block
+      Expect.new(self.class.stat, *args, &block)
+    end
+
     def skip
       raise Skip.new("Skipping #{@__pork__desc__}")
     end
diff --git a/lib/pork/expect.rb b/lib/pork/expect.rb
index <HASH>..<HASH> 100644
--- a/lib/pork/expect.rb
+++ b/lib/pork/expect.rb
@@ -4,7 +4,7 @@ require 'pork/inspect'
 module Pork
   class Expect < BasicObject
     instance_methods.each{ |m| undef_method(m) unless m =~ /^__|^object_id$/ }
-    def initialize stat, object, message=nil, message_lazy=nil, &checker
+    def initialize stat, object=nil, message=nil, message_lazy=nil, &checker
       @stat, @object, @negate = stat, object, false
       @message, @message_lazy = message, message_lazy
       satisfy(&checker) if checker
context api should be private and expect api should work