LOGIN / SIGN UP

test/unit/commit_set_observer_test.rb
 
28 @@ -28,14 +28,14 @@
28 task_id = "1"
29 task = Task.find_by_id(task_id)
30 assert_equal TaskStatus::NEW, task.task_status_id
31 assert_equal 0, task.task_change_sets.size
32 assert_equal 1, task.task_change_sets.size
33 assert_equal 0, task.task_changes.size
34
35 observer.send :task_close, commit, task_id
36
37 task = Task.find_by_id(task_id)
38 assert_equal TaskStatus::CLOSED, task.task_status_id
39 assert_equal 1, task.task_change_sets.size
40 assert_equal 2, task.task_change_sets.size
41 assert_equal 2, task.task_changes.size
42 end
43
...  
46 @@ -46,14 +46,14 @@
46 task_id = "2"
47 task = Task.find_by_id(task_id)
48 assert_equal TaskStatus::CLOSED, task.task_status_id
49 assert_equal 0, task.task_change_sets.size
50 assert_equal 1, task.task_change_sets.size
51 assert_equal 0, task.task_changes.size
52
53 observer.send :task_close, commit, task_id
54
55 task = Task.find_by_id(task_id)
56 assert_equal TaskStatus::CLOSED, task.task_status_id
57 assert_equal 0, task.task_change_sets.size
58 assert_equal 1, task.task_change_sets.size
59 assert_equal 0, task.task_changes.size
60 end
61
...  
65 @@ -65,13 +65,13 @@
65 task_id = "1"
66 task = Task.find_by_id(task_id)
67 assert_equal TaskStatus::NEW, task.task_status_id
68 assert_equal 0, task.task_change_sets.size
69 assert_equal 1, task.task_change_sets.size
70 assert_equal 0, task.task_changes.size
71
72 observer.send :task_comment, commit, task_id
73
74 task = Task.find_by_id(task_id)
75 assert_equal 1, task.task_change_sets.size
76 assert_equal 2, task.task_change_sets.size
77 assert_equal 1, task.task_changes.size
78 end
79
...  

lib/septic/scm/log_git.rb
 
25 @@ -25,14 +25,14 @@
25 # Class handling git log parsing and adding to database
26 class LogGit < Septic::Scm::Log
27 # Initialize git log
28 def initialize(path, reference)
29 super
30 def initialize(user, path, reference)
31 super(user, path, reference)
32
33 # Parse reference, sets where and branch
34 parse_reference(reference)
35 end
36
37 def update
38 def update
39 raise "can only update to heads not #{@where}" unless @where == 'heads'
40
41 # Get repository for commit
...  
56 @@ -56,19 +56,24 @@
56 commits_data.reverse_each do |commit_data|
57 add_commit(commit_set, commit_data)
58 end
59 commit_set.reload
60 commit_set.save
61
62 commit_set
63 end
64
65 def add_commit(commit_set, commit_data)
66 commit_data['commit_set_id'] = commit_set.id
67 commit_data['repository_id'] = commit_set.repository.id
68
69 # Split body / files, lookup user and create commit
70 commit_data['body'], commit_files = parse_body_files(commit_data['body'])
71 user = get_user_from_email(commit_data['email'])
72 if user
73 commit_data['user_id'] = user.id
74 end
75 commit = commit_set.commits.create(commit_data)
76
77 commit = CommitGit.create(commit_data)
78
79 # Add commit files
80 if commit.valid?
...  
84 @@ -79,7 +84,7 @@
84 # Update commit links
85 set_revision_relations(commit)
86 else
82 raise "failed creating commit with errors %s" % commit.errors.full_messages.join('\n')
88 raise "failed creating commit for %s with errors %s" % [commit.revision, commit.errors.full_messages.join('\n')]
89 end
90 end
91
...