~ubuntu-branches/ubuntu/saucy/juju-core/saucy-proposed

« back to all changes in this revision

Viewing changes to src/launchpad.net/lpad/build_test.go

  • Committer: Package Import Robot
  • Author(s): James Page
  • Date: 2013-07-11 17:18:27 UTC
  • mfrom: (1.1.1)
  • Revision ID: package-import@ubuntu.com-20130711171827-vjqkg40r0dlf7ys2
Tags: 1.11.2-0ubuntu1
* New upstream release.
* Make juju-core the default juju (LP: #1190634):
  - d/control: Add virtual package juju -> juju-core.
  - d/juju-core.postinst.in: Bump priority of alternatives over that of
    python juju packages.
* Enable for all architectures (LP: #1172505):
  - d/control: Version BD on golang-go to >= 2:1.1.1 to ensure CGO
    support for non-x86 archs, make juju-core Arch: any.
  - d/README.source: Dropped - no longer required.
* d/watch: Updated for new upstream tarball naming.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
package lpad_test
 
2
 
 
3
import (
 
4
        . "launchpad.net/gocheck"
 
5
        "launchpad.net/lpad"
 
6
)
 
7
 
 
8
func (s *ModelS) TestBuild(c *C) {
 
9
        m := M{
 
10
                "title":                           "thetitle",
 
11
                "arch_tag":                        "armel",
 
12
                "buildstate":                      "Failed to build",
 
13
                "build_log_url":                   "http://logurl",
 
14
                "upload_log_url":                  "http://uploadurl",
 
15
                "web_link":                        "http://page",
 
16
                "datecreated":                     "2011-10-10T00:00:00",
 
17
                "datebuilt":                       "2011-10-10T00:00:10",
 
18
                "current_source_publication_link": testServer.URL + "/pub_link",
 
19
        }
 
20
        build := &lpad.Build{lpad.NewValue(nil, "", "", m)}
 
21
        c.Assert(build.Title(), Equals, "thetitle")
 
22
        c.Assert(build.Arch(), Equals, "armel")
 
23
        c.Assert(build.State(), Equals, lpad.BuildState("Failed to build"))
 
24
        c.Assert(build.BuildLogURL(), Equals, "http://logurl")
 
25
        c.Assert(build.UploadLogURL(), Equals, "http://uploadurl")
 
26
        c.Assert(build.WebPage(), Equals, "http://page")
 
27
        c.Assert(build.Created(), Equals, "2011-10-10T00:00:00")
 
28
        c.Assert(build.Finished(), Equals, "2011-10-10T00:00:10")
 
29
 
 
30
        testServer.PrepareResponse(200, jsonType, `{"source_package_name": "packagename"}`)
 
31
 
 
32
        p, err := build.Publication()
 
33
        c.Assert(err, IsNil)
 
34
        c.Assert(p.PackageName(), Equals, "packagename")
 
35
 
 
36
        req := testServer.WaitRequest()
 
37
        c.Assert(req.Method, Equals, "GET")
 
38
        c.Assert(req.URL.Path, Equals, "/pub_link")
 
39
}
 
40
 
 
41
func (s *ModelS) TestBuildRetry(c *C) {
 
42
        testServer.PrepareResponse(200, jsonType, "{}")
 
43
 
 
44
        build := &lpad.Build{lpad.NewValue(nil, testServer.URL, testServer.URL + "/build", nil)}
 
45
        err := build.Retry()
 
46
        c.Assert(err, IsNil)
 
47
 
 
48
        req := testServer.WaitRequest()
 
49
        c.Assert(req.Method, Equals, "POST")
 
50
        c.Assert(req.URL.Path, Equals, "/build")
 
51
        c.Assert(req.Form["ws.op"], DeepEquals, []string{"retry"})
 
52
}
 
53
 
 
54
func (s *ModelS) TestPublication(c *C) {
 
55
        m := M{
 
56
                "source_package_name":    "pkgname",
 
57
                "source_package_version": "pkgversion",
 
58
                "component_name":         "main",
 
59
                "distro_series_link":     testServer.URL + "/distro_series_link",
 
60
                "archive_link":           testServer.URL + "/archive_link",
 
61
        }
 
62
        p := &lpad.Publication{lpad.NewValue(nil, "", "", m)}
 
63
        c.Assert(p.PackageName(), Equals, "pkgname")
 
64
        c.Assert(p.PackageVersion(), Equals, "pkgversion")
 
65
        c.Assert(p.Component(), Equals, "main")
 
66
 
 
67
        testServer.PrepareResponse(200, jsonType, `{"name": "archivename"}`)
 
68
        archive, err := p.Archive()
 
69
        c.Assert(err, IsNil)
 
70
        c.Assert(archive.Name(), Equals, "archivename")
 
71
 
 
72
        req := testServer.WaitRequest()
 
73
        c.Assert(req.Method, Equals, "GET")
 
74
        c.Assert(req.URL.Path, Equals, "/archive_link")
 
75
 
 
76
        testServer.PrepareResponse(200, jsonType, `{"name": "seriesname"}`)
 
77
        series, err := p.DistroSeries()
 
78
        c.Assert(err, IsNil)
 
79
        c.Assert(series.Name(), Equals, "seriesname")
 
80
 
 
81
        req = testServer.WaitRequest()
 
82
        c.Assert(req.Method, Equals, "GET")
 
83
        c.Assert(req.URL.Path, Equals, "/distro_series_link")
 
84
}