問題タブ [timecop]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - Rails - DateTime.now を使用するメソッドのテスト
DateTime.now を使用していくつかのデータの検索を実行するメソッドがあります。さまざまな日付でメソッドをテストしたいのですが、DateTime.now をスタブ化する方法がわかりませんし、Timecop で動作させることもできません (そのように動作します)。
私が試した時間の警官で
仕様を実行すると、 puts DateTime.now が得られることがわかります2015-05-25T01:00:00+01:00
が、出力をテストしているメソッド内に同じ puts DateTime.now があることがわかります2015-07-24T08:57:53+01:00
(今日の日付)。どうすればこれを達成できますか?
- - - - - - - - - アップデート - - - - - - - - - - - - - - - - --------------------
before(:all)
問題の原因と思われるブロックにレコード (@employee など) を設定していました。Timecop do
ブロックの後にセットアップが完了した場合にのみ機能します。これはなぜですか?
ruby-on-rails - Timecop は日付を正しくモックできません
時間に敏感なテスト ケースのテストに TimeCop Gem を使用しています。lib ディレクトリに 1 つのファイルがあります。文字列定数だけが含まれています。
例。
私のキュウリのテスト ケースでは、コードのこの部分はモック タイムを取得しません。システム時刻を選択します。何故ですか?
ruby-on-rails - Timecop は、FactoryGirl で定義された DateTime 属性では機能しません
私は次の工場を持っています:
私の仕様では、Timecop を次のように使用しています。
Time.now と Date.today は期待通り与えられた時刻でスタブされていますが、ファクトリの due_date 属性は常にシステムの日付に基づいて返されるため、Timecop で提供された日付に基づいて返されるようにしたいと考えています。出来ますか?
Ruby 2.2.2、Rails 3.2.22、Timecop 0.8.0、Rspec 3.1.0 を使用しています。
ruby-on-rails - capybara / phantomjs テストの時間を制御する方法
さまざまなタイムゾーンやさまざまな時間に、いくつかの締め切りがユーザーに正しく表示されることをテストしたいと考えています。私のテストでは capybara+rspec+phantomjs を使用しています。
ブロックを Timecop.travel(datetime) に渡しています。そのブロック内のテストのコードはモックされた日時を正しく取得していますが、PhantomJS / モックされたブラウザーがモックされた時間を取得していないようです。
PhantomJS を Timecop で動作させる既知の方法はありますか? または、テスト目的で時間をモックまたは操作する他の方法はありますか?
これは、私が何を意味するかを説明するための簡単な例です。