{"id":3528,"date":"2022-08-16T11:43:43","date_gmt":"2022-08-16T11:43:43","guid":{"rendered":"http:\/\/the-codest.localhost\/blog\/quick-guide-on-how-to-run-containers-from-tests\/"},"modified":"2026-03-11T05:56:42","modified_gmt":"2026-03-11T05:56:42","slug":"iss-celvedis-par-to-ka-palaist-konteinerus-no-testiem","status":"publish","type":"post","link":"https:\/\/thecodest.co\/lv\/blog\/quick-guide-on-how-to-run-containers-from-tests\/","title":{"rendered":"\u012ass ce\u013cvedis par to, k\u0101 palaist konteinerus no testiem"},"content":{"rendered":"<p>Es izmantoju <strong>Spring Boot <\/strong> in the <a href=\"https:\/\/thecodest.co\/lv\/dictionary\/why-do-projects-fail\/\">projekts<\/a> lai mazin\u0101tu uzrakstu skaitu. Testu konteineri ir neatkar\u012bgi no <strong>Pavasara ietvars<\/strong> un varat tos izmantot ar\u012b bez t\u0101.<\/p>\n\n\n\n<p>Es izmantoju Testcontainers versiju 1.17.3, bet varat izmantot ar\u012b jaun\u0101ko. Testi ar Postgres konteineru.<\/p>\n\n\n\n<p>Vispirms defin\u0113jiet konteineru:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"java\" class=\"language-java\">public klase Postgres13TC extends PostgreSQLContainer {\n  private static final Postgres13TC TC = new Postgres13TC();\n\n  private Postgres13TC() {\n    super(\"postgres:13.2\");\n  }\n\n  public static Postgres13TC getInstance() {\n    return TC;\n  }\n\n  @Override\n  public void start() {\n    super.start();\n    System.setProperty(\"DB_URL\", TC.getJdbcUrl());\n    System.setProperty(\"DB_USERNAME\", TC.getUsername());\n    System.setProperty(\"DB_PASSWORD\", TC.getPassword());\n  }\n\n  @Override\n  public void stop() {\n    \/\/ neko nedara. \u0160\u012b ir koplietojam\u0101 instance. \u013baujiet JVM apstr\u0101d\u0101t \u0161o oper\u0101ciju.\n  }\n}<\/code><\/pre>\n\n\n\n<p><code>P\u0113c tam inicializ\u0113jiet Pavasara lietojumprogrammas kontekstu. M\u0113s sa\u0146emam visus <a href=\"https:\/\/thecodest.co\/lv\/blog\/app-data-collection-security-risks-value-and-types-explored\/\">dati<\/a> avota konfigur\u0101ciju no konteinera gad\u012bjuma un iestatiet to k\u0101 Pavasara konfigur\u0101ciju:<\/code><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"java\" class=\"language-java\">publisk\u0101 klase ContainerInit implement\u0113 ApplicationContextInitializer {\n\n  public static Postgres13TC postgres13TC;\n\n  static {\n    postgres13TC = Postgres13TC.getInstance();\n    postgres13TC.start();\n  }\n\n  @Override\n  public void initialize(ConfigurableApplicationContext applicationContext) {\n    TestPropertySourceUtils.addInlinedPropertiesToEnvironment(\n        applicationContext,\n        \"spring.datasource.url=\" + postgres13TC.getJdbcUrl(),\n        \"spring.datasource.username=\" + postgres13TC.getUsername(),\n        \"spring.datasource.password=\" + postgres13TC.getPassword(),\n        \"db.host=\" + postgres13TC.getHost(),\n        \"db.port=\" + postgres13TC.getMappedPort(postgres13TC.POSTGRESQL_PORT),\n        \"db.name=\" + postgres13TC.getDatabaseName(),\n        \"db.username=\" + postgres13TC.getUsername(),\n        \"db.password=\" + postgres13TC.getPassword()\n    );\n  }\n}<\/code><\/pre>\n\n\n\n<p>Beidzot m\u0113s varam palaist m\u016bsu testu, un viss tiks palaists zem p\u0101rsega:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"java\" class=\"language-java\">@SpringBootTest(webEnvironment = RANDOM_PORT)\n@AutoConfigureTestDatabase(replace = NONE)\n@ContextConfiguration(initializers = ContainerInit.class)\n@Testcontainers\nclass DummyRepositoryTest {\n\n  @Autowired\n  private DummyRepository dummyRepository;\n\n  @Test\n  void shouldReturnDummy() {\n    var byId = dummyRepository.getById(10L);\n    var expected = new Dummy();\n    expected.setId(10L);\n    assertThat(byId).completes().emitsCount(1).emits(expected);\n  }\n}<\/code><\/pre>\n\n\n\n<p><code>Vai ar\u012b, ja m\u0113s v\u0113lamies palaist neatkar\u012bgu Spring testu, m\u0113s varam tie\u0161i izmantot konteineru:<\/code><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"java\" class=\"language-java\">@Testcontainers\nklase SimpleDbTest {\n\n  @Container\n  private static final Postgres13TC postgres13TC = Postgres13TC.getInstance();\n\n  @Test\n  void testConnection() {\n    assumeThat(postgres13TC.isRunning());\n    var connectionProps = new Properties();\n    connectionProps.put(\"user\", postgres13TC.getUsername());\n    connectionProps.put(\"password\", postgres13TC.getPassword());\n    try (Connection connection = DriverManager.getConnection(postgres13TC.getJdbcUrl(),\n        connectionProps)) {\n    var resultSet = connection.prepareStatement(\"Select 1\").executeQuery();\n    resultSet.next();\n    assertThat(resultSet.getInt(1)).isEqualTo(1);\n    } catch (SQLException sqlException) {\n    assertThat((Exception) sqlException).doesNotThrowAnyException();\n    }\n  }\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Rezum\u0113jot<\/h2>\n\n\n\n<p>Testkonteineri ir \u013coti \u0113rti lietojami r\u012bki, kas pal\u012bdz <a href=\"https:\/\/thecodest.co\/lv\/blog\/why-us-companies-are-opting-for-polish-developers\/\">mums<\/a> lai izveidotu integr\u0101cijas testus, kas izmanto <a href=\"https:\/\/thecodest.co\/lv\/dictionary\/docker-developer\/\">Docker<\/a> konteineri. Tas mums nodro\u0161ina liel\u0101ku elast\u012bbu un palielina izstr\u0101des \u0101trumu. Pareiza testu konfigur\u0101cijas iestat\u012b\u0161ana samazina laiku, kas nepiecie\u0161ams, lai uz\u0146emtu jaunus izstr\u0101d\u0101t\u0101jus. Vi\u0146iem nav j\u0101konfigur\u0113 visas atkar\u012bbas, vienk\u0101r\u0161i j\u0101palai\u017e uzrakst\u012btie testi ar izv\u0113l\u0113tiem konfigur\u0101cijas failiem.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/thecodest.co\/contact\"><img decoding=\"async\" src=\"\/app\/uploads\/2024\/05\/interested_in_cooperation_.png\" alt=\"sadarb\u012bbas baneris\"\/><\/a><\/figure>","protected":false},"excerpt":{"rendered":"<p>Uzziniet, k\u0101 palaist konteineru formas testus ar Java saist\u012bt\u0101 rakst\u0101, kur\u0101 m\u016bsu vec\u0101kais Java programm\u0113t\u0101js par\u0101da visu burv\u012bbu.<\/p>","protected":false},"author":2,"featured_media":3529,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[8],"tags":[],"class_list":["post-3528","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-development"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Quick Guide on How to Run Containers from Tests - The Codest<\/title>\n<meta name=\"description\" content=\"Learn how to run containers form tests in our Java related article where our senior java developer shows all the magic.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/thecodest.co\/lv\/emuars\/iss-celvedis-par-to-ka-palaist-konteinerus-no-testiem\/\" \/>\n<meta property=\"og:locale\" content=\"lv_LV\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Quick Guide on How to Run Containers from Tests\" \/>\n<meta property=\"og:description\" content=\"Learn how to run containers form tests in our Java related article where our senior java developer shows all the magic.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/thecodest.co\/lv\/emuars\/iss-celvedis-par-to-ka-palaist-konteinerus-no-testiem\/\" \/>\n<meta property=\"og:site_name\" content=\"The Codest\" \/>\n<meta property=\"article:published_time\" content=\"2022-08-16T11:43:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-11T05:56:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"thecodest\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"thecodest\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/\"},\"author\":{\"name\":\"thecodest\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/person\\\/7e3fe41dfa4f4e41a7baad4c6e0d4f76\"},\"headline\":\"Quick Guide on How to Run Containers from Tests\",\"datePublished\":\"2022-08-16T11:43:43+00:00\",\"dateModified\":\"2026-03-11T05:56:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/\"},\"wordCount\":124,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/quick_guide_on_how_to_run_containers_from_tests.png\",\"articleSection\":[\"Software Development\"],\"inLanguage\":\"lv\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/\",\"url\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/\",\"name\":\"Quick Guide on How to Run Containers from Tests - The Codest\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/quick_guide_on_how_to_run_containers_from_tests.png\",\"datePublished\":\"2022-08-16T11:43:43+00:00\",\"dateModified\":\"2026-03-11T05:56:42+00:00\",\"description\":\"Learn how to run containers form tests in our Java related article where our senior java developer shows all the magic.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#breadcrumb\"},\"inLanguage\":\"lv\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"lv\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#primaryimage\",\"url\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/quick_guide_on_how_to_run_containers_from_tests.png\",\"contentUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/quick_guide_on_how_to_run_containers_from_tests.png\",\"width\":960,\"height\":540},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/quick-guide-on-how-to-run-containers-from-tests\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/thecodest.co\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Quick Guide on How to Run Containers from Tests\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#website\",\"url\":\"https:\\\/\\\/thecodest.co\\\/\",\"name\":\"The Codest\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/thecodest.co\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"lv\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\",\"name\":\"The Codest\",\"url\":\"https:\\\/\\\/thecodest.co\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"lv\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/03\\\/thecodest-logo.svg\",\"contentUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/03\\\/thecodest-logo.svg\",\"width\":144,\"height\":36,\"caption\":\"The Codest\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/pl.linkedin.com\\\/company\\\/codest\",\"https:\\\/\\\/clutch.co\\\/profile\\\/codest\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/person\\\/7e3fe41dfa4f4e41a7baad4c6e0d4f76\",\"name\":\"thecodest\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"lv\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"caption\":\"thecodest\"},\"url\":\"https:\\\/\\\/thecodest.co\\\/lv\\\/author\\\/thecodest\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u012ass ce\u013cvedis par to, k\u0101 palaist konteinerus no testiem - The Codest","description":"Uzziniet, k\u0101 palaist konteineru formas testus ar Java saist\u012bt\u0101 rakst\u0101, kur\u0101 m\u016bsu vec\u0101kais Java programm\u0113t\u0101js par\u0101da visu burv\u012bbu.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/thecodest.co\/lv\/emuars\/iss-celvedis-par-to-ka-palaist-konteinerus-no-testiem\/","og_locale":"lv_LV","og_type":"article","og_title":"Quick Guide on How to Run Containers from Tests","og_description":"Learn how to run containers form tests in our Java related article where our senior java developer shows all the magic.","og_url":"https:\/\/thecodest.co\/lv\/emuars\/iss-celvedis-par-to-ka-palaist-konteinerus-no-testiem\/","og_site_name":"The Codest","article_published_time":"2022-08-16T11:43:43+00:00","article_modified_time":"2026-03-11T05:56:42+00:00","og_image":[{"width":960,"height":540,"url":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png","type":"image\/png"}],"author":"thecodest","twitter_card":"summary_large_image","twitter_misc":{"Written by":"thecodest","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#article","isPartOf":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/"},"author":{"name":"thecodest","@id":"https:\/\/thecodest.co\/#\/schema\/person\/7e3fe41dfa4f4e41a7baad4c6e0d4f76"},"headline":"Quick Guide on How to Run Containers from Tests","datePublished":"2022-08-16T11:43:43+00:00","dateModified":"2026-03-11T05:56:42+00:00","mainEntityOfPage":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/"},"wordCount":124,"commentCount":0,"publisher":{"@id":"https:\/\/thecodest.co\/#organization"},"image":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#primaryimage"},"thumbnailUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png","articleSection":["Software Development"],"inLanguage":"lv","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/","url":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/","name":"\u012ass ce\u013cvedis par to, k\u0101 palaist konteinerus no testiem - The Codest","isPartOf":{"@id":"https:\/\/thecodest.co\/#website"},"primaryImageOfPage":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#primaryimage"},"image":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#primaryimage"},"thumbnailUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png","datePublished":"2022-08-16T11:43:43+00:00","dateModified":"2026-03-11T05:56:42+00:00","description":"Uzziniet, k\u0101 palaist konteineru formas testus ar Java saist\u012bt\u0101 rakst\u0101, kur\u0101 m\u016bsu vec\u0101kais Java programm\u0113t\u0101js par\u0101da visu burv\u012bbu.","breadcrumb":{"@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#breadcrumb"},"inLanguage":"lv","potentialAction":[{"@type":"ReadAction","target":["https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/"]}]},{"@type":"ImageObject","inLanguage":"lv","@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#primaryimage","url":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png","contentUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/quick_guide_on_how_to_run_containers_from_tests.png","width":960,"height":540},{"@type":"BreadcrumbList","@id":"https:\/\/thecodest.co\/blog\/quick-guide-on-how-to-run-containers-from-tests\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/thecodest.co\/"},{"@type":"ListItem","position":2,"name":"Quick Guide on How to Run Containers from Tests"}]},{"@type":"WebSite","@id":"https:\/\/thecodest.co\/#website","url":"https:\/\/thecodest.co\/","name":"The Codest","description":"","publisher":{"@id":"https:\/\/thecodest.co\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/thecodest.co\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"lv"},{"@type":"Organization","@id":"https:\/\/thecodest.co\/#organization","name":"The Codest","url":"https:\/\/thecodest.co\/","logo":{"@type":"ImageObject","inLanguage":"lv","@id":"https:\/\/thecodest.co\/#\/schema\/logo\/image\/","url":"https:\/\/thecodest.co\/app\/uploads\/2024\/03\/thecodest-logo.svg","contentUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/03\/thecodest-logo.svg","width":144,"height":36,"caption":"The Codest"},"image":{"@id":"https:\/\/thecodest.co\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/pl.linkedin.com\/company\/codest","https:\/\/clutch.co\/profile\/codest"]},{"@type":"Person","@id":"https:\/\/thecodest.co\/#\/schema\/person\/7e3fe41dfa4f4e41a7baad4c6e0d4f76","name":"thecodest","image":{"@type":"ImageObject","inLanguage":"lv","@id":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","caption":"thecodest"},"url":"https:\/\/thecodest.co\/lv\/author\/thecodest\/"}]}},"_links":{"self":[{"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/posts\/3528","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/comments?post=3528"}],"version-history":[{"count":9,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/posts\/3528\/revisions"}],"predecessor-version":[{"id":7964,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/posts\/3528\/revisions\/7964"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/media\/3529"}],"wp:attachment":[{"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/media?parent=3528"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/categories?post=3528"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thecodest.co\/lv\/wp-json\/wp\/v2\/tags?post=3528"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}