Skip to content
Snippets Groups Projects
Commit 9d00bb08 authored by Douwe Maan's avatar Douwe Maan
Browse files

Import Google Code issue assignee when mapped.

parent 2f797a14
No related branches found
No related tags found
No related merge requests found
Loading
Loading
@@ -99,10 +99,24 @@ module Gitlab
end
labels << nice_status_name(raw_issue["status"])
 
assignee_id = nil
if raw_issue.has_key?("owner")
username = user_map[raw_issue["owner"]["name"]]
if username.start_with?("@")
username = username[1..-1]
if user = User.find_by(username: username)
assignee_id = user.id
end
end
end
issue = project.issues.create!(
title: raw_issue["title"],
description: body,
author_id: project.creator_id,
assignee_id: assignee_id,
state: raw_issue["state"] == "closed" ? "closed" : "opened"
)
issue.add_labels_by_names(labels)
Loading
Loading
Loading
Loading
@@ -344,6 +344,11 @@
"name" : "schattenpr...",
"htmlLink" : "https://code.google.com/u/106498139506637530000/"
},
"owner" : {
"kind" : "projecthosting#issuePerson",
"name" : "thilo...",
"htmlLink" : "https://code.google.com/u/104224918623172014000/"
},
"updated" : "2009-11-18T05:14:58.000Z",
"published" : "2009-11-18T00:20:19.000Z",
"closed" : "2009-11-18T05:14:58.000Z",
Loading
Loading
require "spec_helper"
 
describe Gitlab::GoogleCodeImport::Importer do
let(:mapped_user) { create(:user, username: "thilo123") }
let(:raw_data) { JSON.parse(File.read(Rails.root.join("spec/fixtures/GoogleCodeProjectHosting.json"))) }
let(:client) { Gitlab::GoogleCodeImport::Client.new(raw_data) }
let(:import_data) {
{
"repo" => client.repo("tint2").raw_data,
"user_map" => {
"thilo..." => "@thilo123"
"thilo..." => "@#{mapped_user.username}"
}
}
}
let(:project) { create(:project, import_data: import_data) }
subject { described_class.new(project) }
subject { described_class.new(project) }
 
describe "#execute" do
it "imports status labels" do
subject.execute
 
Loading
Loading
@@ -43,6 +45,8 @@ describe Gitlab::GoogleCodeImport::Importer do
issue = project.issues.first
expect(issue).to_not be_nil
expect(issue.iid).to eq(169)
expect(issue.author).to eq(project.creator)
expect(issue.assignee).to eq(mapped_user)
expect(issue.state).to eq("closed")
expect(issue.label_names).to include("Priority: Medium")
expect(issue.label_names).to include("Status: Fixed")
Loading
Loading
@@ -65,7 +69,7 @@ describe Gitlab::GoogleCodeImport::Importer do
note = project.issues.first.notes.first
expect(note).to_not be_nil
expect(note.note).to include("Comment 1")
expect(note.note).to include("@thilo123")
expect(note.note).to include("@#{mapped_user.username}")
expect(note.note).to include("November 18, 2009 05:14")
expect(note.note).to include("applied, thanks.")
expect(note.note).to include("Status: Fixed")
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment