require 'test_helper' require 'webmock/minitest' require 'json' require 'dify_client' class DifyClientTest < Minitest::Test def setup @api_key = 'YOUR_API_KEY' @client = DifyClient::Client.new(@api_key) end def test_update_api_key new_api_key = 'NEW_API_KEY' @client.update_api_key(new_api_key) assert_equal new_api_key, @client.instance_variable_get(:@api_key) end def test_get_application_parameters user = 'USER_ID' expected_response = {} stub_request(:get, "https://api.dify.ai/v1/parameters"). with( body: {"user"=>"USER_ID"}, headers: { 'Accept'=>'*/*', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Authorization'=>'Bearer YOUR_API_KEY', 'Content-Type'=>'application/x-www-form-urlencoded', 'Responsetype'=>'json', 'User-Agent'=>'Ruby' }). to_return(status: 200, body: expected_response.to_json, headers: {}) response = @client.get_application_parameters(user) assert_equal expected_response, response end end