field.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. var assert = require('assert');
  2. var browserify = require('../');
  3. var vm = require('vm');
  4. var test = require('tap').test;
  5. test('fieldString', function (t) {
  6. t.plan(1);
  7. var b = browserify();
  8. b.require(__dirname + '/field/string.js', { expose: './string.js' });
  9. b.bundle(function (err, src) {
  10. if (err) return t.fail(err);
  11. var c = {};
  12. vm.runInNewContext(src, c);
  13. t.equal(
  14. c.require('./string.js'),
  15. 'browser'
  16. );
  17. });
  18. });
  19. test('fieldObject', function (t) {
  20. t.plan(1);
  21. var b = browserify();
  22. b.require(__dirname + '/field/object.js', { expose: './object.js' });
  23. b.bundle(function (err, src) {
  24. if (err) return t.fail(err);
  25. var c = {};
  26. vm.runInNewContext(src, c);
  27. t.equal(
  28. c.require('./object.js'),
  29. '!browser'
  30. );
  31. });
  32. });
  33. test('missObject', function (t) {
  34. t.plan(1);
  35. var b = browserify();
  36. b.require(__dirname + '/field/miss.js', { expose: './miss.js' });
  37. b.bundle(function (err, src) {
  38. if (err) return t.fail(err);
  39. var c = {};
  40. vm.runInNewContext(src, c);
  41. t.equal(
  42. c.require('./miss.js'),
  43. '!browser'
  44. );
  45. });
  46. });
  47. test('fieldSub', function (t) {
  48. t.plan(1);
  49. var b = browserify();
  50. b.require(__dirname + '/field/sub.js', { expose: './sub.js' });
  51. b.bundle(function (err, src) {
  52. if (err) return t.fail(err);
  53. var c = {};
  54. vm.runInNewContext(src, c);
  55. t.equal(
  56. c.require('./sub.js'),
  57. 'browser'
  58. );
  59. });
  60. });