Как Вы запускаете тесты в Sinatra?

Предыдущий ответ неверен, и в стандарте очень ясно, как обрабатывается конструктор массива. См. В Fortran 2008 C4103.

Все элементы в конструкторе массива формы вопроса должны быть одного и того же типа объявленного типа и такого же типа. Компилятор здесь жалуется, потому что это ограничение было нарушено путем смешивания реального выражения с этими целыми выражениями.

Просто сделать первый элемент элементом реальной / двойной точности недостаточно. Возможно, компилятор использует сообщение об ошибке «конструктор массива integer(4)« как короткая рука для », первый элемент - integer(4), но не все остальные элементы:«.

Чтобы решить эту проблему, форма конструктора массива, вы должны сделать все элементы одного типа / типа (вероятно, реальную / двойную точность).

Как указано (правильно) в этом другом ответе, существует другая форма для конструкторов массива:

[ real ::0,8,0,4,26,8,0,17.5,0,0,0,17.5 ... ]

, который преобразует все элементы в указанный тип. Вы даже можете использовать эту форму для создания массива с нулевым размером:

 [ real :: ]
17
задан Tony M. 13 January 2010 в 10:27
поделиться

2 ответа

Должно быть так же просто, как ruby your_app_name.rb. На самом деле, это показано на домашней странице Синатры (внизу).

-1
ответ дан 30 November 2019 в 12:58
поделиться

Должно быть достаточно просто.

Учитывая my_app.rb:

require 'rubygems'
require 'sinatra'

get '/hi' do
  "Hello World!"
end

И my_app_test.rb:

require 'my_app'
require 'test/unit'
require 'rack/test'

set :environment, :test

class MyAppTest < Test::Unit::TestCase
  include Rack::Test::Methods

  def app
    Sinatra::Application
  end

  def test_hi_returns_hello_world
    get '/hi'
    assert last_response.ok?
    assert_equal 'Hello World!', last_response.body
  end
end

Вы должны убедиться, что у вас установлены правильные драгоценные камни:

gem install sinatra rake rack-test

Теперь вы можете запустить ваше приложение и провести такие тесты:

ruby my_app.rb
ruby my_app_test.rb
27
ответ дан 30 November 2019 в 12:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: