class TC_Add < Test::Unit::TestCase include P4RubyTest def test_add_files assert( p4.connect, "Failed to connect to Perforce server" ) assert( p4.run_opened.length == 0, "Shouldn't have any open files" ) Dir.mkdir( "test_add_files" ) %w{ foo bar baz }.each do |fn| fn = "test_add_files/#{fn}.txt" File.open( fn, "w" ) do |f| f.puts( "This is a test file" ) end p4.run_add( fn ) end assert( p4.run_opened.length == 3, "Unexpected number of open files" ) change = p4.fetch_change assert( change.kind_of?( P4::Spec ), "Change form is not a spec" ) change._description = "Add some test files\n" assert( change._description == "Add some test files\n", "Change description not set properly" ) assert( p4.run_submit( change ), "Failed to add files" ) # Ensure no files are open assert( p4.run_opened.length == 0, "Files remain open after submit" ) end end