Commit Graph

52 Commits

Author SHA1 Message Date
00fdc86315 stop failing the build because of overworked/slow es test servers 2014-04-25 14:45:24 -07:00
dcc4a3747f Updated the API to the latest version and fixed an issue with the test runner,
which was confused by parameters that were in the URL, but not in the params list.
2014-04-15 08:30:42 -07:00
af89a4917f test fixes... 2014-03-28 16:11:00 -07:00
222598a235 added features parsing and lte/gte methods 2014-03-27 11:13:58 -07:00
66a399d623 adjusted the 'do' action, so that it will replace $args within the body 2014-03-03 08:32:43 -07:00
70b51dfa6d stopped using an empty suffix for test/branch stuff, so that things are less confusing down the road when versions change 2014-02-05 09:46:53 -07:00
6c5838fbfa Added API generation and Yaml testing for 1.x and 1.0 branches of elasticsearch. 2014-02-05 08:18:19 -07:00
5ff4b6f855 moved away from submodules 2014-02-04 11:24:37 -07:00
f7f98572a3 updated grunt-run, tests now support skip.features and match:/regex/ 2014-02-03 09:55:45 -07:00
af57b9e49e Changed default port for testing es to 9400 2014-01-17 10:56:53 -07:00
3d8117ba3e removed the previous browser_yaml_suite, and fixed the 'returns a client' tests 2014-01-17 09:45:39 -07:00
980163dfb2 switched submodule back to elasticsearch/elasticsearch, updated the generator to properly pull updates from the related branch 2014-01-16 11:58:35 -07:00
d4c0f71419 ci.sh now calls mocha directly so that it can pass the port from jenkins and use the jenkins reporter 2014-01-15 14:41:57 -07:00
a80e6aba4f fixed some doc issues, and reorganized the browser tests. Rather than running one per build, now a unit test page is run, and a build test page is run 2014-01-15 13:09:46 -07:00
18e134d0a6 Summary of Changes:
- moved es install/start/stop logic into a seperate script
  - `grunt test` now runs the integration tests once for each version of ES we support
  - grunt can now install and run elasticearch (using grunt-run, pure js solution coming later)
  - included seperate es.sh script specifically for starting or stopping elasticsearch
  - url aliases, api, yaml_suite/index.js, and yaml_tests.json, are all now duplicated for 0_90 support
  - the client now accepts an apiVersion argument (undocumented) which defaults to 'master' but can be '0.90'
  - The yaml test runner will now check the name of the ES instance it is connecting to, preventing accidental wiping of ES
2014-01-14 23:10:12 -07:00
37ce4e440c Merge remote-tracking branch 'upstream/master' into browser_tests_for_travis 2014-01-14 17:20:57 -07:00
6fecb08a40 updated ES reference, pulled in latest API changes, integration test runner now clears the previous tracer log when it is in use. 2014-01-14 16:31:35 -07:00
3223fb4a6d added browser tests, modified ci script, removed testing for version 0.90.x 2014-01-10 11:23:08 -07:00
0a17848719 merged master 2014-01-08 14:22:53 -07:00
a7c2417f0d - using ping to detect when ES is ready rather than sleep
- reusing es downloads to make local testing faster
- periodic checks will kill the script on failure
- coveralls report is only sent once per build
- failures sending the coveralls report won't cause the build to fail
2014-01-07 17:24:36 -07:00
74612864e2 updated the rest-spec, and fixed an error in the integration tests after switching to expect 2013-12-23 18:00:00 -07:00
a77b2be1f2 still working to get the tests running in ie... stupid IE 2013-12-23 17:31:37 -07:00
2b3734a081 switched out assertion library with should.js... I really should have written my own baby util library since that was the third time I've done that... 2013-12-23 15:33:53 -07:00
96b44ebf8b Merging spenceralger:travis_and_coveralls. Summary of changes:
- removed several unneeded devDeps
- removed old get_spec.js script
- the client's ping method will now send back true as the body when the ping
  succceeds, and false when it does not. When the ping fails, the error will
  still be sent back and the connection's status will still be set to "dead".
- All of the client's methods now have a spec property, which will provide the
  JSON spec used to run that method.
- The yaml test runner will only camelCase param names that are documented, uses
  the client's method's new spec property
- Trace log events will now have their proper original query string parameters
- The "tracer" logger will now write to elasticsearch-tracer.log by default, and
  will truncate the file if it already exists.
- When running the integration tests, the client will now use a tracer logger which
  writes to stderr. The default level is "warning", but with the VERBOSE environment
  var it becomes "trace" and the logger will write to it's default file
- Added .idea to the .gitignore, it was being published to NPM
- Cleanup of the grunt tasks. Consilidated several tiny files into seperate moderately sized ones.
2013-12-18 13:21:40 -07:00
cf3be01c57 - grunt watch will now abort mid task
- connection's ping method now accepts requestTimeout, path, and method params like
  all the grown-up API calls
- ConnectionPool now managed connection timeouts. When a connection dies a
  timeout object is created to track when the timeout is scheduled and the function
  to call when it does. It also tracks how many times it has run to allow the timeout
  to grow
- Timeouts now grow with use of `config.calcDeadTimeout` which is set to 'exponential'
  by default, but can also be set to flat in order to always use the standard
  deadTimeout. Exponential growth of the deadTimeout is stopped at config.maxDeadTimeout
  which is set to 30 minutes by default.
- Connections no longer have a resuscitate method (too hard to spell). Now the
  method is created dynamically as a part of the timeout object as it just calls
  the connection's ping method and needed to access variables like revive attempts.
- Timeouts were moved to the transport layer, meaning that you need to capture the
  abort method and abort the request yourself if you are handling connections
  directly, ConnectionsAbstract's ping method does this.
2013-12-16 02:35:28 -07:00
a42cd776a5 more modifications in the name of cleaner Jenkins results 2013-12-15 14:55:21 -07:00
37cd2f4f6c Summary of changes:
- updated copyright
 - several tempalate changes for the docs
 - added a config for grunt-contrib-watch
 - updated nock commit number
 - fixed the coverage script
 - removed the export_docs script
 - added error message for legacy "es" users who don't have a version locked and have not upgraded
 - host will now add auth to urls created with `#makeUrl()`
 - Log class no longer looks for `config.loggers`
 - The log class now properly escapes single quotes in trace logs
 - Removed compiled yaml_tests.js from the repo
 - Yaml suite will only log error and warning messages unless the VERBOSE env var is set
 - createDefer is now a global setting, changed by modifying Transport.createDefer fubction
 - wrote tests for Content-Type checking
 - callbacks will now return the body and status of the request (if the request has completed) when an error occurs
 - Stdio logger now adds "Elasticsearch " to the front of log messages to distinguish it from other output to stdout.
2013-12-15 14:12:39 -07:00
aa831043e8 rasing the test timeout to something that will hopefully cause less false errors 2013-12-12 20:32:52 -07:00
abecfaf9a4 removing json version of the yaml_suite from the repo 2013-12-12 20:27:55 -07:00
dea18fcd7d improved stream mocks for older versions and increased compatabity from 0.8 up 2013-12-12 20:07:31 -07:00
c5440792d3 modifications to the jenkins script to work better with bash, fixed the commit number of the nock dep 2013-12-12 16:05:41 -07:00
345ac776ef Major updates for testing and grunt, jenkins tests are now powered by the jenkins.sh script in the scripts directory. 2013-12-12 15:39:42 -07:00
b43621322b more tests, now with 91% coverage! 2013-12-04 17:02:34 -06:00
c070c9e741 more tests, simplified the standard tests for the loggers 2013-12-04 14:55:14 -06:00
477f1aff84 Fixed the integration tests, set the default method for indices.putTemplate and indices.putMapping to PUT 2013-11-25 14:14:00 -07:00
97ba084795 save point durring huge unorganized refactor 2013-11-22 16:48:30 -07:00
20804bb5ab moved the transport request back into the transport, added when.js promises 2013-11-14 14:30:24 -07:00
7912ae63af added test runner for jenkins 2013-11-11 13:14:19 -07:00
7e6fa479ad Added the browser based test suite, have it running automatically via PhantomJS with grunt, all tests are passing except one, which requires PhantomJS send a body with a DELETE request 2013-11-05 10:01:12 -07:00
984a55f6c0 Cleaned up the generation script, fixing the doc-blocks above the client actions.
Replaced the transport, giving it all of the functionality that was brought over to the client and making the client simply a place for the API to live. Essentially a shell that can easily be removed.

spec'd out the TransportRequest which will eventually inherit from one of server possible promise implementations and will be plugable. It will also implement the "abort" functionality needed in an environment like node.js
2013-10-29 08:48:29 -07:00
6ae5c30b2e prevented undefined from getting passed to path.join in the yaml test runner 2013-10-24 10:47:21 -07:00
cc1509cef3 removed old dependency on the q lib 2013-10-24 10:41:04 -07:00
e231876702 Switched from downloading zips to downloading tarballs, as the unzip module was randomly sucking. 2013-10-23 21:54:36 -07:00
20462c73fd Slight refactor to the api module, so it will simply extend the client like it did previously, and
also exposes itself on the module.exports so that is can be referenced externally.

Added "grunt run" task which currently has a single config, generate_js_api.

Removed the api spec submodule, generator just downloads master when it runs.
2013-10-23 16:07:56 -07:00
c14d37aa42 Slight refactor to the api module, so it will simply extend the client like it did 2013-10-23 14:49:00 -07:00
01763c2c39 Refactored the API, moving it into a single api.js file which can be
exluded from a build if desired.
2013-10-23 06:24:02 -07:00
b063dfdca7 Added "extends" key to the jshint config files, so there is less repetition.
Mocha now runs from grunt, just run "grunt"

Copied es-php's README.md, will modify later

More logging around sending a request, including stack traces for debug messages

Connections now manage their own state, and emit a "status changed" event which
the connection pool listens for

Fixed the custom errors

Stream loggers will dump their buffered output to stderr when the process exits
so that log messages will be sort of saved, File logger overrides this and
writes to the file syncronously

Added _.handler(), _.scheduled(), and _.makeBoundMethods() to the utils
2013-10-21 10:09:12 -07:00
8cc87637e2 modified the config to own the connectionPool, transport, and a few other objects 2013-10-18 09:40:55 -07:00
46aeac57e4 yaml tests passing using a personl instance of ES, working on specifying the host/port 2013-10-16 15:13:47 -07:00
9e608226e1 All tests are passing. Removed the HTML docs 2013-10-03 10:05:58 -07:00