monese_csv_downloader 0.1.5 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 67324dd54f19e29b8ae12f9c38c9f2f6a78f6d28fd009e8aca1f52e6c477e71a
4
- data.tar.gz: 9026f735067d945cbb43d3f668f323c7d253263501e2a0771a17c61de323c65d
3
+ metadata.gz: 6c304bc9d8a0ff6eccdc922ce18889a446b6fd067efceb0ee45ae540e730b765
4
+ data.tar.gz: 48128be9ce625de36870011808f0a97a54c0ea8b459973598d7554011f025045
5
5
  SHA512:
6
- metadata.gz: 2b16c0fadad1859eeddb326282e488d802ec890f059e771e2e59b05b6fe1f81f31b44a82901ff55b57916ebce12d41444f17a315c713ecba7bb719d277e78365
7
- data.tar.gz: 606e4aa0d74055fbf42db00c80fbaa94b3931763518b1149f45c82d23e6b63dd54b0df5a180ed39287027b583c923ad7f7864b0f9b6a4fe27086652a882eb0d0
6
+ metadata.gz: 772572a64565961f9a0ab3156a2717660e05fbf2995accc1782558985dce15248d5cc0f377ea7d004c97f5d92a1a28e9defae9f815a85a886c0839987c247645
7
+ data.tar.gz: ff99dd19aa2c3ff014cef1fb174fdf0c969290ff1c4684d4b8746d8e9c83a9cdce1dca5eec08cd362ee8161208e65bfa52b1843f7683c63c49b0a0c5eafe9ebf
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- monese_csv_downloader (0.1.5)
4
+ monese_csv_downloader (0.1.6)
5
5
  thor (~> 1.1)
6
6
  watir (~> 6.19)
7
7
  webdrivers (~> 4.5.0)
@@ -10,8 +10,10 @@ GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
12
  childprocess (3.0.0)
13
+ mini_portile2 (2.5.1)
13
14
  minitest (5.14.4)
14
- nokogiri (1.11.4-x86_64-darwin)
15
+ nokogiri (1.11.5)
16
+ mini_portile2 (~> 2.5.0)
15
17
  racc (~> 1.4)
16
18
  racc (1.5.2)
17
19
  rake (10.5.0)
@@ -10,9 +10,10 @@ module MoneseCsvDownloader
10
10
  desc "download FILE", "Downloads an account statement to FILE"
11
11
  method_option :phone_number, desc: "Phone number for Monese account", required: true
12
12
  method_option :password, desc: "Password for Monese account", required: true
13
+ method_option :account_type, desc: "Account type: joint/personal", default: "personal"
13
14
  def download(file)
14
15
  puts "downloading to #{file}"
15
- contents = MoneseCsvDownloader::WebClient.new(options.fetch(:phone_number), options.fetch(:password)).download
16
+ contents = MoneseCsvDownloader::WebClient.new(options[:phone_number], options[:password]).download(options[:account_type].to_sym)
16
17
  File.write(file, contents)
17
18
  end
18
19
  end
@@ -1,3 +1,3 @@
1
1
  module MoneseCsvDownloader
2
- VERSION = "0.1.5"
2
+ VERSION = "0.1.6"
3
3
  end
@@ -56,7 +56,8 @@ module MoneseCsvDownloader
56
56
  Watir::Browser.new :firefox, options: { profile: profile }
57
57
  end
58
58
 
59
- def download
59
+ # account_type: :personal, or :joint
60
+ def download(account_type)
60
61
  # Login
61
62
  self.browser.goto "https://web.monese.com/"
62
63
  self.browser.text_field(data_testid: "login-input").send_keys @monese_account_phone_number[4..-1]
@@ -64,8 +65,13 @@ module MoneseCsvDownloader
64
65
  self.browser.text_field(data_testid: "input-password").send_keys @monese_account_password
65
66
  self.browser.button(data_testid: "form-submit").click
66
67
 
67
- # Select joint account
68
- self.browser.a(data_testid: /account-link-\d-MONESE_JOINT/).click
68
+ if account_type.eql?(:joint)
69
+ self.browser.a(data_testid: /account-link-\d-MONESE_JOINT/).click
70
+ elsif account_type.eql?(:personal)
71
+ self.browser.a(data_testid: /account-link-\d-PRIVATE/).click
72
+ else
73
+ raise ArgumentError, "Invalid account_type: #{account_type}"
74
+ end
69
75
 
70
76
  self.browser.button(data_testid: "download-statement-button").click
71
77
  self.browser.div(class: /DownloadModal-module__InputWrapper/, index: 1).click
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: monese_csv_downloader
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paul Kuruvilla
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-05-17 00:00:00.000000000 Z
11
+ date: 2021-05-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler