add tests + refactoring Gem Facet