FlurlExtensionTest.cs 895 B

123456789101112131415161718192021222324252627282930313233
  1. using Flurl.Http;
  2. namespace Jint.Tests.Runtime.ExtensionMethods
  3. {
  4. public class FlurlExtensionTest
  5. {
  6. [RunnableInDebugOnlyAttribute]
  7. public void CanUseFlurlExtensionMethods()
  8. {
  9. var engine = new Engine(options =>
  10. {
  11. options.AddExtensionMethods(
  12. typeof(GeneratedExtensions),
  13. typeof(Flurl.GeneratedExtensions));
  14. });
  15. const string script = @"
  16. var result = 'https://httpbin.org/anything'
  17. .AppendPathSegment('person')
  18. .SetQueryParams({ a: 1, b: 2 })
  19. .WithOAuthBearerToken('my_oauth_token')
  20. .PostJsonAsync({
  21. first_name: 'Claire',
  22. last_name: 'Underwood'
  23. }).GetAwaiter().GetResult();
  24. ";
  25. engine.Execute(script);
  26. var result = engine.GetValue("result").ToObject();
  27. }
  28. }
  29. }