Class: Marmite::User

Inherits:
Object
  • Object
show all
Defined in:
lib/marmite/user.rb

Defined Under Namespace

Classes: NotFound

Instance Method Summary collapse

Constructor Details

#initialize(username) ⇒ User

Returns a new instance of User.



7
8
9
10
11
# File 'lib/marmite/user.rb', line 7

def initialize(username)
  @user = ::Octokit.user username
rescue Octokit::NotFound
  raise NotFound
end

Instance Method Details

#emailObject



13
14
15
# File 'lib/marmite/user.rb', line 13

def email
  user.email
end

#favourite_languageObject



31
32
33
# File 'lib/marmite/user.rb', line 31

def favourite_language
  languages.max{|a,b| a.last <=> b.last}.first
end

#languagesObject



21
22
23
24
25
26
27
28
29
# File 'lib/marmite/user.rb', line 21

def languages
  hash = {}

  repos.map(&:language).compact.each do |lang|
    hash[lang] = (hash[lang] || 0) + 1
  end

  hash
end

#reposObject



17
18
19
# File 'lib/marmite/user.rb', line 17

def repos
  @repos ||= user.rels[:repos].get.data
end