Sha256: b220b35c5cd8642c745ab5fa0b1bc9382d10adbce867ab685d9710d62b4c8c42

Contents?: true

Size: 1.84 KB

Versions: 8

Compression:

Stored size: 1.84 KB

Contents

require 'test_helper'

class AudioTest < ActiveSupport::TestCase
  
  setup do
    @valid = File.open("#{Rails.root}/test/fixtures/audios/audio.wav")
    @small = File.open("#{Rails.root}/test/fixtures/audios/small.wav")
    @large = File.open("#{Rails.root}/test/fixtures/audios/large.wav")
    @invalid = File.open("#{Rails.root}/test/fixtures/audios/invalid.wav")
    @undefined = File.open("#{Rails.root}/test/fixtures/audios/undefined.zip")
  end
  
  teardown do
    @valid.close
    @small.close
    @large.close
    @invalid.close
    @undefined.close
  end
  
  test "valid file assignment" do
    @audio = Audio.create(:file => @valid)
    assert @audio.valid?, "valid file assignment failed"
    assert @audio.file?, "should have a file"
  end
  
  test "inavlid file assignment" do
    @audio = Audio.create(:file => @invalid)
    assert !@audio.valid?, "invalid file assignment succeeded"
    assert @audio.errors[:file].include? "must be an audio file"
  end
  
  test "undefined file assignment" do
    @audio = Audio.create(:file => @undefined)
    assert !@audio.valid?, "undefined file assignment succeeded"
    assert @audio.errors[:file].include? "extension is invalid"
  end
  
  test "too large file assignment" do
    @audio = Audio.create(:file => @large)
    assert !@audio.valid?, "invalid file assignment succeeded"
    assert @audio.errors[:file].include? "size must be between 2 kilobytes and 2 megabytes"
  end
  
  test "too small file assignment" do
    @audio = Audio.create(:file => @small)
    assert !@audio.valid?, "invalid file assignment succeeded"
    assert @audio.errors[:file].include? "size must be between 2 kilobytes and 2 megabytes"
  end
  
  test "no file assignment" do
    @audio = Audio.create()
    assert !@audio.valid?, "invalid file assignment succeeded"
    assert @audio.errors[:file].include? "must be attached"
  end
  
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
attached-0.5.5 test/dummy/test/unit/audio_test.rb
attached-0.5.4 test/dummy/test/unit/audio_test.rb
attached-0.5.3 test/dummy/test/unit/audio_test.rb
attached-0.5.2 test/dummy/test/unit/audio_test.rb
attached-0.5.1 test/dummy/test/unit/audio_test.rb
attached-0.5.0 test/dummy/test/unit/audio_test.rb
attached-0.4.9 test/dummy/test/unit/audio_test.rb
attached-0.4.8 test/dummy/test/unit/audio_test.rb