Q:

Anchor element's pathname returns undefined in Rhino with env.js

I have run into an issue that I believe is rooted in the implementation of anchor tags in Rhino.  Although I am utilizing env.js, I suspect perhaps I am not configuring something correctly.  
In particular, my issue occurs while I am attempting to write unit tests against code written for an angularjs application.  When I include angular.js (versions 1.2.1 to present), I get the following error:
TypeError: Cannot call method "charAt" of undefined
I am convinced the error is the result of this call to urlParsingNode.pathname since a console.log call reveals that the pathname object is undefined.  
I traced the instantiation of the urlParsingNode to this line where we see that it is the result of a call to document.createElement("a");  Further down, we see that they set the href attribute in this line in hopes that the created anchor tag will utilize the browser to correctly parse the URL.
I have to believe I'm not the first to attempt JS unit testing for angular via Rhino, but thus far I've not successfully Googled myself to a solution.  Any tips will be greatly appreciated.

A:

Found it and fixed it.  The pathname getter/setter simply was undefined for HTMLAnchorElement in env.js.  
I submitted a pull request, but unfortunately the project looks all but abandoned.  I also couldn't figure out how to build it out to a single file.  It appears perhaps someone has taken it upon themselves to break it apart into require.js modules.  Not a battle worth fighting for my use case.
So for anyone else who hits this issue, I have the code you need below.  It belongs in the HTMLAnchorElement.prototype.  In my copy of env.js 1.2, this prototype begins on line 8075.  I added the following at line 8118.
get pathname() {
  var uri = Envjs.urlsplit(this.href);
  return uri.path;
},
set pathname(val) {
  var uri = Envjs.urlsplit(this.href);
  uri.path = val
  this.href(uri.urlunsplit(uri));
},

FYI, my particular issue is resolved with this pull request.

