From 2553f51e4444f53fe7ecebc8d113abc1f690775c Mon Sep 17 00:00:00 2001 From: James Allen Date: Tue, 8 Jul 2014 12:55:29 +0100 Subject: [PATCH] Remove unused subscription downgrade logic --- services/web/BackgroundJobsWorker.coffee | 4 -- .../SubscriptionBackgroundTasks.coffee | 19 ---------- .../Subscription/SubscriptionLocator.coffee | 6 --- .../Subscription/SubscriptionUpdater.coffee | 6 --- .../SubscriptionBackgroundTasksTests.coffee | 38 ------------------- .../SubscriptionLocatorTests.coffee | 18 --------- .../SubscriptionUpdaterTests.coffee | 14 ------- 7 files changed, 105 deletions(-) delete mode 100644 services/web/app/coffee/Features/Subscription/SubscriptionBackgroundTasks.coffee delete mode 100644 services/web/test/UnitTests/coffee/Subscription/SubscriptionBackgroundTasksTests.coffee diff --git a/services/web/BackgroundJobsWorker.coffee b/services/web/BackgroundJobsWorker.coffee index 070c5ab4ad..398e5b494b 100644 --- a/services/web/BackgroundJobsWorker.coffee +++ b/services/web/BackgroundJobsWorker.coffee @@ -1,5 +1,4 @@ settings = require('settings-sharelatex') -SubscriptionBackgroundTasks = require("./app/js/Features/Subscription/SubscriptionBackgroundTasks") TpdsPollingBackgroundTasks = require("./app/js/Features/ThirdPartyDataStore/TpdsPollingBackgroundTasks") time = @@ -19,7 +18,4 @@ runPeriodically = (funcToRun, periodLength)-> setTimeout recursiveReference, periodLength setTimeout recursiveReference, 0 -# TODO: Remove this one month after the ability to start free trials was removed -runPeriodically ((cb) -> SubscriptionBackgroundTasks.downgradeExpiredFreeTrials(cb)), time.oneHour - runPeriodically ((cb) -> TpdsPollingBackgroundTasks.pollUsersWithDropbox(cb)), time.fifteenMinutes diff --git a/services/web/app/coffee/Features/Subscription/SubscriptionBackgroundTasks.coffee b/services/web/app/coffee/Features/Subscription/SubscriptionBackgroundTasks.coffee deleted file mode 100644 index e82365846d..0000000000 --- a/services/web/app/coffee/Features/Subscription/SubscriptionBackgroundTasks.coffee +++ /dev/null @@ -1,19 +0,0 @@ -async = require 'async' -logger = require 'logger-sharelatex' -SubscriptionUpdater = require("./SubscriptionUpdater") -SubscriptionLocator = require("./SubscriptionLocator") - -module.exports = SubscriptionBackgroundJobs = - # TODO: Remove this one month after the ability to start free trials was removed - downgradeExpiredFreeTrials: (callback = (error, subscriptions)->) -> - SubscriptionLocator.expiredFreeTrials (error, subscriptions) => - return callback(error) if error? - logger.log total_subscriptions:subscriptions.length, "downgraging subscriptions" - downgrades = [] - for subscription in subscriptions - do (subscription) => - downgrades.push (cb) => - logger.log subscription: subscription, "downgrading free trial" - SubscriptionUpdater.downgradeFreeTrial(subscription, cb) - async.series downgrades, (error) -> callback(error, subscriptions) - diff --git a/services/web/app/coffee/Features/Subscription/SubscriptionLocator.coffee b/services/web/app/coffee/Features/Subscription/SubscriptionLocator.coffee index 08875aa062..b761ee8252 100644 --- a/services/web/app/coffee/Features/Subscription/SubscriptionLocator.coffee +++ b/services/web/app/coffee/Features/Subscription/SubscriptionLocator.coffee @@ -12,9 +12,3 @@ module.exports = logger.log user_id:user_id, "getting users subscription" Subscription.findOne admin_id:user_id, callback - # TODO: Remove this one month after the ability to start free trials was removed - expiredFreeTrials: (callback = (error, subscriptions)->) -> - query = - "freeTrial.expiresAt": "$lt": new Date() - "freeTrial.downgraded": "$ne": true - Subscription.find query, callback diff --git a/services/web/app/coffee/Features/Subscription/SubscriptionUpdater.coffee b/services/web/app/coffee/Features/Subscription/SubscriptionUpdater.coffee index cab7b5690b..403a58b67b 100644 --- a/services/web/app/coffee/Features/Subscription/SubscriptionUpdater.coffee +++ b/services/web/app/coffee/Features/Subscription/SubscriptionUpdater.coffee @@ -24,12 +24,6 @@ module.exports = self._createNewSubscription adminUser_id, (err, subscription)-> self._updateSubscription recurlySubscription, subscription, callback - # TODO: Remove this one month after the ability to start free trials was removed - downgradeFreeTrial: (subscription, callback = (error)->) -> - UserFeaturesUpdater.updateFeatures subscription.admin_id, Settings.defaultPlanCode, -> - subscription.freeTrial.downgraded = true - subscription.save callback - addUserToGroup: (adminUser_id, user_id, callback)-> logger.log adminUser_id:adminUser_id, user_id:user_id, "adding user into mongo subscription" searchOps = diff --git a/services/web/test/UnitTests/coffee/Subscription/SubscriptionBackgroundTasksTests.coffee b/services/web/test/UnitTests/coffee/Subscription/SubscriptionBackgroundTasksTests.coffee deleted file mode 100644 index 7cfc981030..0000000000 --- a/services/web/test/UnitTests/coffee/Subscription/SubscriptionBackgroundTasksTests.coffee +++ /dev/null @@ -1,38 +0,0 @@ -sinon = require('sinon') -require('chai').should() -SandboxedModule = require('sandboxed-module') -modulePath = require('path').join __dirname, '../../../../app/js/Features/Subscription/SubscriptionBackgroundTasks' - -describe "SubscriptionBackgroundTasks", -> - beforeEach -> - @SubscriptionLocator = {} - @Settings = defaultPlanCode: - collaborators: 13 - versioning: true - @SubscriptionUpdater = {} - - @SubscriptionBackgroundTasks = SandboxedModule.require modulePath, requires: - "./SubscriptionLocator" : @SubscriptionLocator - "./SubscriptionUpdater" : @SubscriptionUpdater - "settings-sharelatex" : @Settings - "logger-sharelatex" : log:-> - - describe 'downgradeExpiredFreeTrials', -> - beforeEach -> - @subscriptions = [ - { admin_id : 1 }, - { admin_id : 2 } - ] - @SubscriptionUpdater.downgradeFreeTrial = sinon.stub().callsArg(1) - @SubscriptionLocator.expiredFreeTrials = sinon.stub().callsArgWith(0, null, @subscriptions) - @callback = sinon.stub() - @SubscriptionBackgroundTasks.downgradeExpiredFreeTrials(@callback) - - it "should downgrade each expired subscription", -> - @SubscriptionUpdater.downgradeFreeTrial.callCount.should.equal @subscriptions.length - for subscription in @subscriptions - @SubscriptionUpdater.downgradeFreeTrial.calledWith(subscription).should.equal true - - it "should return the subscriptions in the callback", -> - @callback.called.should.equal true - @callback.args[0][1].should.deep.equal @subscriptions diff --git a/services/web/test/UnitTests/coffee/Subscription/SubscriptionLocatorTests.coffee b/services/web/test/UnitTests/coffee/Subscription/SubscriptionLocatorTests.coffee index c2f50cb5d5..6b305ff9d2 100644 --- a/services/web/test/UnitTests/coffee/Subscription/SubscriptionLocatorTests.coffee +++ b/services/web/test/UnitTests/coffee/Subscription/SubscriptionLocatorTests.coffee @@ -40,21 +40,3 @@ describe "Subscription Locator Tests", -> subscription.should.equal @subscription done() - describe "expiredFreeTrials", -> - beforeEach -> - @subscriptions = [ _id : 1, freeTrial:{} ] - @Subscription.find = sinon.stub().callsArgWith(1, null, @subscriptions) - - it "should look for subscriptions with an expired free trial that haven't been downgraded", (done)-> - @SubscriptionLocator.expiredFreeTrials => - @Subscription.find.called.should.equal true - query = @Subscription.find.args[0][0] - assert.isDefined(query["freeTrial.expiresAt"].$lt) - assert.deepEqual(query["freeTrial.downgraded"],"$ne": true) - done() - - it "should return the subscriptions in a callback", (done)-> - @SubscriptionLocator.expiredFreeTrials (err, subscriptions)=> - subscriptions.should.deep.equal @subscriptions - done() - diff --git a/services/web/test/UnitTests/coffee/Subscription/SubscriptionUpdaterTests.coffee b/services/web/test/UnitTests/coffee/Subscription/SubscriptionUpdaterTests.coffee index f39b257977..592098e9be 100644 --- a/services/web/test/UnitTests/coffee/Subscription/SubscriptionUpdaterTests.coffee +++ b/services/web/test/UnitTests/coffee/Subscription/SubscriptionUpdaterTests.coffee @@ -119,20 +119,6 @@ describe "Subscription Updater", -> @subscription.save.called.should.equal true done() - - describe 'downgradeFreeTrial', -> - it "should tell the feature updater to update the user", (done)-> - @SubscriptionUpdater.downgradeFreeTrial @subscription, => - @UserFeaturesUpdater.updateFeatures.calledWith(@subscription.admin_id, @Settings.defaultPlanCode).should.equal true - done() - - it "should update the subscription", (done)-> - @SubscriptionUpdater.downgradeFreeTrial @subscription, => - @subscription.freeTrial.downgraded.should.equal true - @subscription.save.called.should.equal true - done() - - describe "addUserToGroup", -> it "should add the users id to the group as a set", (done)-> @SubscriptionUpdater.addUserToGroup @adminUser._id, @otherUserId, =>